Jsoup之间的区别是什么。parse()和Jsoup。java中的ParseBodyFragment()?
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
class JsoupTester {
public static void main(String[] args) {
String html = "<html><head><title>Sample Title</title></head><body><p>Sample Content</p></body></html>";
Document document = Jsoup.parse(html);
System.out.println(document.body());
Document document2 = Jsoup.parseBodyFragment(html);
System.out.println(document2.body());
}
}
Jsoup之间的区别是什么。parse()和Jsoup。java中的ParseBodyFragment()是否都提供相同的输出
输出:
shiv@OS:~/CodeSnippets/TrashCode$ javac JsoupTester.java
shiv@OS:~/CodeSnippets/TrashCode$ java JsoupTester
<body>
<p>Sample Content</p>
</body>
<body>
<title>Sample Title</title>
<p>Sample Content</p>
</body>
# 1 楼答案
如documentation所述,parse方法将完整的HTML文档作为输入,parseBodyFragment方法将HTML正文片段作为输入
您可以通过运行JShell来测试差异:
如果在
<head>
中使用带有<title>
的HTML文档:调用
Jsoup.parse(html)
给出:调用
Jsoup.parseBodyFragment(html)
给出:所以主要的区别是
Jsoup.parseBodyFragment
总是给你一个空的head,并且Jsoup.parse
能够解析head部分