【使用JSOUP实现网络爬虫】从元素抽取属性,文本和HTML
2015-08-26 17:31
761 查看
问题
在解析获得一个Document实例对象,并查找到一些元素之后,你希望取得在这些元素中的数据。方法
要取得一个属性的值,可以使用Node.attr(String key)方法
对于一个元素中的文本,可以使用
Element.text()方法
对于要取得元素或属性中的HTML内容,可以使用
Element.html(),
或
Node.outerHtml()方法
示例:
[java] view plaincopyprint?String html = "<p>An <a href='http://example.com/'><b>example</b></a> link.</p>";
Document doc = Jsoup.parse(html);//解析HTML字符串返回一个Document实现
Element link = doc.select("a").first();//查找第一个a元素
String text = doc.body().text(); // "An example link"//取得字符串中的文本
String linkHref = link.attr("href"); // "http://example.com/"//取得链接地址
String linkText = link.text(); // "example""//取得链接地址中的文本
String linkOuterH = link.outerHtml();
// "<a href="http://example.com"><b>example</b></a>"
String linkInnerH = link.html(); // "<b>example</b>"//取得链接内的html内容
说明
上述方法是元素数据访问的核心办法。此外还其它一些方法可以使用:Element.id()
Element.tagName()
Element.className()and
Element.hasClass(String className)
这些访问器方法都有相应的setter方法来更改数据.
参见
Element和
Elements集合类的参考文档
URLs处理
使用CSS选择器语法来查找元素
阅读更多JSOUP相关文章,请看专栏:《使用JSOUP实现网络爬虫》
相关文章推荐
- httpclient4的使用
- http操作,模拟第三方接口回调通知
- Azure虚拟网络基于RFC1918的子网划分
- 【使用JSOUP实现网络爬虫】使用选择器语法来查找元素
- 【使用JSOUP实现网络爬虫】使用DOM方法来遍历一个文档
- 1.6 网络编程之 UDP通信
- iOS开发——网络篇——数据安全(MD5),HTTPS,检测网络状态
- 【使用JSOUP实现网络爬虫】从一个URL加载一个Document
- HTTP 1.1与HTTP 1.0的比较
- iOS开发——网络篇——UIWebview基本使用,NSInvocation(封装类),NSMethodSignature(签名),JavaScript,抛异常,消除警告
- 安装PHP过程中,make步骤报错:(集合网络上各种解决方法)
- XCode7 iOS9无法访问网络的问题
- [iOS]code=-1016等网络请求错误.
- Linux网络虚拟化
- (二) HTTP/2起步
- 解决Exception in thread "http-bio-8081-exec-9"Exception in thread "Druid-ConnectionPool-Create-3819
- 【使用JSOUP实现网络爬虫】解析一个body片断
- 【使用JSOUP实现网络爬虫】解析一个HTML字符串
- 【使用JSOUP实现网络爬虫】入门:解析和遍历一个HTML文档
- AJP与HTTP比较和分析