如何使用jsoup从整个HTML页面中删除特定标签

4
我正在使用jsoup 1.7.3编辑一些HTML文件。
我需要从HTML文件中删除以下标签:
<meta name="GENERATOR" content="XXXXXXXXXXXXXX">
<meta name="CREATED" content="0;0">
<meta name="CHANGED" content="0;0">

正如您所见,这是一个标签,我该怎么做呢?以下是我迄今为止尝试过的方法:

//im pretty sure that the <meta> tag is nested in the <header>
but removing the whole  header is bad practice.

Document docsoup = Jsoup.parse(htmlin);
docsoup.head().remove();

你建议什么?
1个回答

9

我建议您使用 Jsoup选择器,例如

Document document = Jsoup.parse(html);
Elements selector = document.select("meta[name=GENERATOR]");

for (Element element : selector) {
    element.remove();
}

doc.html(); // returns String html with elements removed

这可以用一行代码完成: Jsoup.parse(html).select("script,hidden,style,form").remove().html() - Martijn Hiemstra

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接