Visdom: RUST版使用类jQuery API的html解析操作库

轩子哲 · · 256 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

在node里,cheeriojs这类的库对于html的解析与操作非常方便,熟悉jQuery的用户使用起来基本没有什么负担。Golang里也有Goquery这样优秀的库,提供了类似的书写体验。有了它们,我们在项目中需要用到对html文档进行处理,比如html网页内容抓取时,极大地减轻了我们的工作。

相比于Node和Golang,RUST这类的库相对要欠缺一些,虽然也有scraper/select这样的crate存在,但对于习惯于jQuery这类库写法的人来说,总觉得书写有时候会有些繁琐不够直观。因此这才有了开发`Visdom`的念头。Vis 有视图和访问的意思,dom 有 DOM 模型的意思,这和库的主要功能意义比较贴近。

在Visdom里,基本实现了在Server端所能支持的所有css选择器功能,当然也包括jQuery支持的`:contains`选择器等。另外,Visdom还有个很大的特性是支持了对文本节点的选取和操作功能,能通过它对文本节点做很多更改操作,这表示能通过它来很方便地把一段文本替换为一段html,因此用它来做html的混淆也是很方便的。

在经过多个版本的迭代后,Visdom的基本功能也完全实现,测试用例也已基本全覆盖,希望能给有这方面需求的人带来帮助。

最后,贴一下项目地址:https://github.com/fefit/visdom 

欢迎有使用的、或有类似需求的不吝提供宝贵意见,或者PR,更喜~


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:轩子哲

查看原文:Visdom: RUST版使用类jQuery API的html解析操作库

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

256 次点击  
加入收藏 微博
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传