我正在使用jsoup使用以下命令解析网页
Document document = Jsoup.connect("http://www.blablabla.de/").get();
然后
System.out.println(document.toString());
我得到了理想的结果。但保存主题网页,然后尝试执行相同的操作
Document doc = Jsoup.parse("/user/test/test.html","UTF-8");
System.out.println(doc.toString());
我得到了
html
head head
body
/home/1.html
body
html
我的第二个问题是我想获得特定类的每个div的内容。我正在使用
Elements elements = document.select("div.things.subthings");
我想要捕获的div如下
<div class="col_a col text">
<div class="text">
done
</div>
</div>
答案 0 :(得分:2)
但是保存主题网页然后尝试执行相同的操作
调用错误的方法。实际上,调用的方法就是这个:
static Document Jsoup::parse(String html, String baseUri) // Parse HTML into a Document.
你想打电话给这个:
static Document parse(File in, String charsetName) // Parse the contents of a file as HTML.
请改为尝试:
Document doc = Jsoup.parse(new File("/user/test/test.html"), "UTF-8");
System.out.println(doc.toString());
我的第二个问题是我想获得特定类的每个div的内容。
尝试下面的一个css查询:
查找class="col_a col text"
div.col_a.col.text
使用class="col_a col text"
或class="text"
div.col_a.col.text, div.text
查找class="col_a col text"
所有div,其后代中包含class="text"
的div
div.col_a.col.text:has(div.text)