您的位置:首页 > 编程语言 > Java开发

【Java Utility】Jsoup网页爬虫工具--使用DOM方法浏览Document【七】

2017-04-26 21:18 696 查看
原文出自https://jsoup.org/cookbook/extracting-data/dom-navigation

需求:

已知某个HTML文档的结构,需要从中提取数据。

解决方案:

将HTML解析成Document,使用类似DOM的方法

File input = new File("/tmp/input.html");
Document doc = Jsoup.parse(input, "UTF-8", "http://example.com/");

Element content = doc.getElementById("content");
Elements links = content.getElementsByTag("a");
for (Element link : links) {
String linkHref = link.attr("href");
String linkText = link.text();
}
说明:
Elements【元素集】提供了一系列类似DOM的方法来查找元素,并提取和操作这些元素的数据。

查找元素:
getElementById(String id)	//通过id获取元素
getElementsByTag(String tag)	//通过tag获取元素集
getElementsByClass(String className)	//通过className获取元素集
getElementsByAttribute(String key) (and related methods)	//通过属性名获取元素集
Element siblings: siblingElements(), firstElementSibling(), lastElementSibling(); nextElementSibling(), previousElementSibling()
Graph: parent(), children(), child(int index)	//同级元素的获取


获取元素数据:
attr(String key)	//获取或设置属性值
attributes()	//获取所有属性
id(), className() and classNames()	//获取id或className或classNames
text() 	//获取或设置text内容
html()	//获取或设置元素内html内容
outerHtml() 	//获取元素外部HTML内容
data() 	//获取data
tag() and tagName()	//获取tag或tagName


操作HTML及文本:
append(String html), prepend(String html)
appendText(String text), prependText(String text)
appendElement(String tagName), prependElement(String tagName)
html(String value)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐