亲宝软件园·资讯

展开

java爬虫Jsoup主要类及功能使用详解

刨红薯的小羊竿尔 人气:0

一、Jsoup的主要功能

Jsoup是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

二、Jsoup的主要类

1. org.jsoup.Jsoup类

Jsoup类是任何Jsoup程序的入口点,并将提供从各种来源加载和解析HTML文档的方法。

static Connection connect(String url)创建并返回URL的连接。
static Document parse(File in, String charsetName)将指定的字符集文件解析成文档。
static Document parse(String html)将给定的html代码解析成文档。
static String clean(String bodyHtml, Whitelist whitelist)从输入HTML返回安全的HTML,通过解析输入HTML并通过允许的标签和属性的白名单进行过滤。

2. org.jsoup.nodes.Document类

该类表示通过Jsoup库加载HTML文档。可以使用此类执行适用于整个HTML文档的操作。

3. org.jsoup.nodes.Element类

HTML元素是由标签名称,属性和子节点组成。 使用Element类,您可以提取数据,遍历节点和操作HTML。

三、Jsoup使用

1.maven引入

<dependency>
    <groupId>org.jsoup</groupId> 
    <artifactId>jsoup</artifactId> 
    <version>1.10.2</version> 
</dependency>

2.加载文档

Document document = Jsoup.connect("http://www.yiibai.com").get();
Document document = Jsoup.parse( new File( "D:/temp/index.html" ) , "utf-8" );```
String html = "<html><head><title>First</title></head><body><p>Parsed</p></body></html>";
Document document = Jsoup.parse(html);

3.解析文档

// 解析文件,获取doc对象 
Document doc = Jsoup.parse(new File("C:\\Users\\myqxin\\Desktop\\set.html"), "utf8"); 
// 1,根据id查询元素 getElementById 
Element element1 = doc.getElementById("people"); 
// 2,根据标签获取元素 getElementsByTag 
Element element2 = doc.getElementsByTag("span").first(); 
// 3,根据class获取元素 getElementsByClass 
Element element3 = doc.getElementsByClass("").first(); 
// 4,根据属性获取元素 getElementsByAttribute 
Element element4 = doc.getElementsByAttribute("").last(); 
// 根据属性和属性值获取 Element element5 = doc.getElementsByAttributeValue("abc","123").last();

4.使用选择器获取元素

selector选择器概述

Selector选择器组合使用

伪选择器selectors

5. 处理元素数据

6.操纵HTML和文本

7.从元素中提取属性,文本和HTML

在解析文档并找到一些元素之后,您将需要获取这些元素中的数据。

加载全部内容

相关教程
猜你喜欢
用户评论