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

在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,更喜~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容