Jsoup从元素中抽取属性 文本和HTML

在解析获得一个Document实例对象,并查找到一些元素之后,我们如何取得在这些元素中的数据呢???

使用Jsoup抽取属性,一般方法如下:
1.要取得一个属性的值,可以使用Node.attr(String key) 方法
2.对于一个元素中的文本,可以使用Element.text()方法
3.对于要取得元素或属性中的HTML内容,可以使用Element.html(), 或 Node.outerHtml()方法

示例

String html = "<p>An <a href='http://baidu.com/'><b>baidu</b></a> link.</p>";
Document doc = Jsoup.parse(html);//解析HTML字符串返回一个Document实现
Element link = doc.select("a").first();//查找第一个a元素</pre>
 
String text = doc.body().text(); // "An baidu link"//取得字符串中的文本
String linkHref = link.attr("href"); // "http://baidu.com/"//取得链接地址
String linkText = link.text(); // "baidu""//取得链接地址中的文本</pre>
 
String linkOuterH = link.outerHtml();
// "<a href="http://baidu.com"><b>baidu</b></a>"
String linkInnerH = link.html(); // "<b>baidu</b>"//取得链接内的html内容

解说:
 上述方法是元素数据访问的核心办法。此外还其它一些方法可以使用:

Element.id()
Element.tagName()
Element.className() and Element.hasClass(String className)

这些访问器方法都有相应的setter方法来更改数据.

发布了236 篇原创文章 · 获赞 87 · 访问量 7217

猜你喜欢

转载自blog.csdn.net/weixin_45743799/article/details/104092973