我正在使用jsoup来解析许多事情。
我正在尝试解析此标记
<pre>HEllo Worl<pre>
但是无法让它发挥作用。
我如何使用jsoup解析它?\
Document jsDoc = null;
jsDoc = Jsoup.connect(url).get();
Elements titleElements = jsDoc.getElementsByTag("pre");
这是我到目前为止所拥有的。
答案 0 :(得分:1)
最新的Jsoup适用于我:
String html = "<p>lorem ipsum</p><pre>Hello World</pre><p>dolor sit amet</p>";
Document document = Jsoup.parse(html);
Elements pres = document.select("pre");
for (Element pre : pres) {
System.out.println(pre.text());
}
结果:
Hello World
如果什么都没有,那么您正在解析的HTML根本不包含任何<pre>
元素。
System.out.println(document.html());
也许URL错了。也许有一些JavaScript用新元素改变HTML DOM(Jsoup不解释也不执行JS)。也许该网站需要一个真正的浏览器而不是机器人(然后更改用户代理)。也许该网站需要登录(您需要维护cookie)。谁知道。您可以使用像Firefox或Chrome这样的真实网络浏览器来解决这个问题。