[英]How do I change the text of an Element in jsoup?
我正在遍历 HTML 文档并更改元素的文本,但 Jsoup 在尝试更改任何元素的文本时不起作用。 我的代码是:
// URL
String url = "http://example.com/source.html";
Document doc = Jsoup.connect(url)
.userAgent("Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:25.0) Gecko/20100101 Firefox/25.0")
.referrer("http://www.google.com")
.ignoreHttpErrors(true).get();
// Select all of the elements in the HTML
Elements eles = doc.body().select("*");
// For each element
for (Element ele : eles) {
String text = ele.ownText();
System.out.println(text);
ele.text("newText");
}
File htmlFile = new File("output.html");
PrintWriter pw = new PrintWriter(htmlFile, "UTF-8");
// Write our translated HTML to the output file
pw.println(doc);
pw.close();
我得到的 HTML 主体是:
<body>
newText
</body>
您正在使用.select("*")
选择文档中的所有元素,效果是您也替换了<body>
的内容,因此其他所有内容都丢失了。 尝试更具体地选择元素。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.