【发布时间】:2026-02-01 11:30:01
【问题描述】:
我正在尝试获取 HTML 页面上的所有文本,不可见文本除外(例如:我不想在 script/style/noscript 标记中显示文本)。
这是我到目前为止的想法:
let parser = kuchiki::parse_html().one(content);
for child in parser.inclusive_descendants() {
if let Some(el) = child.as_element() {
let tag_name = &el.name.local;
if tag_name == "script" || tag_name == "style" || tag_name == "noscript" {
child.detach();
}
}
}
let text = parser.text_contents();
println!("{}", text);
这个想法是第一遍将删除任何script、style 或noscript 标记。然后我可以调用text_contents 来获取可见文本。
但是,text_contents 似乎仍在返回内联 Javascript。
我是否误解了 Kuchiki/html5ever API?
【问题讨论】:
标签: html rust html5ever kuchiki