Skip to content

Repository files navigation

rphtml

一个用 rust 编写的 html 文档解析器,0.4.0 版本前通过 wasm-pack/wasm-bindgen 提供 npm 包。

npm versionBuild Statuscodecov

如何使用

use rphtml::parser::{Doc,ParseOptions,RenderOptions,HResult};fnmain()->HResult{let doc = Doc::parse("<div id='content'>rpthml</div>",ParseOptions{case_sensitive_tagname:false,// 解析时标签区分大小写,`<div>` 和 `<DIV>` 将被视作不同标签,不建议开启allow_self_closing:false,// 允许非替换元素使用自闭合的写法,如 `<div class='' />`auto_fix_unclosed_tag:true,// 自动修复没有结束的标签,注意这里只是简单的将标签闭合auto_fix_unexpected_endtag:true,// 自动修复不正确的结束标签,如 "<div></p></div>" 会被修复为 "<div></div>"auto_fix_unescaped_lt:true,// 自动修复没有实体转译的左尖括号 '<', 比如`<div>a<b</div>`会被修复为`<div>a&lt;b</div>`allow_attr_key_starts_with_equal_sign:true,// 是否允许 "=" 符号出现在属性名的开头,如 `<div =a="c" />` 属性名为"=a",值为"c"})?;// 获取root根节点let root = doc.get_root_node();let render_html = doc.render(&RenderOptions{
..Default::default()// RenderOptions的参数定义可以在wiki中查看});}

License

MIT License.

About

A html parser written in RUST, parse html into node trees.

Topics

Resources

Stars

11 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages