使用Jsoup.connect(String url)方法:
Document doc = Jsoup.connect(“https://jsoup.org/”).get();
String title = doc.title();
IDEA 实例:
@Test
public void Demo03() throws IOException {
//请求jsoup主页并获取到网页的标题
Document doc = Jsoup.connect("https://jsoup.org").get();
String title = doc.title();
System.out.println("获取jsoup页面的标题:" + title);
}
描述
该connect(String url)方法创建一个新的Connection,并get()提取和解析HTML文件。如果在获取URL时发生错误,它将抛出一个IOException,您应该适当处理。
该Connection接口设计用于方法链接以构建特定请求:
//您可以添加数据,Cookie和标头; 设置user-agent,referrer,method; 然后执行。
Document doc = Jsoup.connect(“https://jsoup.org”)
.data(“query”, “Java”)
.userAgent(“Mozilla”)
.cookie(“auth”, “token”)
.timeout(3000)
.post();
在将HTML解析为a后,使用类似DOM的方法Document。
Document doc = Jsoup.connect("https://jsoup.org")
Element content = doc.getElementById("content");
Elements links = content.getElementsByTag("a");
for (Element link : links) {
String linkHref = link.attr("href");
String linkText = link.text();
}
IDEA 实例:
@Test
public void Demo05() throws IOException {
//解析html
Document doc = Jsoup.connect(“https://jsoup.org”).get();
//根据标签名查找
Elements links = doc.getElementsByTag(“a”);
for (Element link : links) {
System.out.println(“link-----------”+link);
//获取和attr(String key, String value)设置属性
String linkHref = link.attr(“href”);
System.out.println(“获取和attr(String key, String value)设置属性—”+linkHref);
//获取和text(String value)设置文本内容
String linkText = link.text();
System.out.println(“获取和text(String value)设置文本内容----”+linkText);
}
}
元素提供了一系列类似DOM的方法来查找元素,并提取和操作它们的数据。DOM getter是上下文的:在父文档上调用它们在文档下找到匹配的元素; 他们在一个子元素上调用了那个孩子下面的元素。通过这种方式,您可以了解所需的数据。
寻找元素
-
getElementById(String id)
//根据ID 查询 -
getElementsByTag(String tag)
//根据标签名 -
getElementsByClass(String className)
//根据class 名 -
getElementsByAttribute(String key)
(及相关方法) -
元素的兄弟姐妹:
siblingElements()
,firstElementSibling()
,lastElementSibling()
,nextElementSibling()
,previousElementSibling()
-
图:
parent()
,children()
,child(int index)
元素数据 -
attr(String key)
获取和attr(String key, String value)
设置属性 -
attributes()
获得所有属性 -
id()
,className()
和classNames()
-
text()
获取和text(String value)
设置文本内容 -
html()
获取和html(String value)
设置内部HTML内容 -
outerHtml()
获取外部HTML值 -
data()
获取数据内容(例如script
和style
标签) -
tag()
和tagName()
处理HTML和文本 -
append(String html)
,prepend(String html)
-
appendText(String text)
,prependText(String text)
-
appendElement(String tagName)
,prependElement(String tagName)
-
html(String value)