【Java爬虫】Jsoup

想要学习Java爬虫,肯定要学Jsoup。jsoup是一款Java的HTML解析器,主要用来对HTML解析,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。
摘要由CSDN通过智能技术生成

官网
中文使用手册

jsoup.jar官网下载
jsoup.jar百度网盘下载 提取码:g6ek

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

从一个URL,文件或字符串中解析HTML;
使用DOM或CSS选择器来查找、取出数据;
可操作HTML元素、属性、文本;

Jsoup的主要类


org.jsoup.Jsoup类

Jsoup类是任何Jsoup程序的入口点,并将提供从各种来源加载和解析HTML文档的方法,Jsoup类的一些重要方法如下:
在这里插入图片描述


org.jsoup.nodes.Document类:

该类表示通过Jsoup库加载HTML文档。可以使用此类执行适用于整个HTML文档的操作。Document类的重要方法参见:http://jsoup.org/apidocs/org/jsoup/nodes/Document.html,Document类的常用方法如下所示:
在这里插入图片描述

org.jsoup.nodes.Element类:

HTML元素是由标签名称,属性和子节点组成。 使用Element类可以提取数据,遍历节点和操作HTMLElement类的重要方法可以参见 :http://jsoup.org/apidocs/org/jsoup/nodes/Element.html,Element类常用方法如下所示:
在这里插入图片描述

准备工作

创建一个Jsoup工程,目录结构如下:
在这里插入图片描述
要添加jsoup的jar包,放到了百度网盘里,版本是:jsoup-1.11.3

爬取内容案例


爬取网页内容

从URL加载文档,使用Jsoup.connect()方法从URL加载

待爬取的页面信息如下图:
在这里插入图片描述


代码为:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.IOException;

/**
 * 获取 http://www.ygdy8.net/html/gndy/index.html 页面的“国内电影下载排行“
 */
public class JsoupDemo {
   
    public static void main(String[] args) {
   
        //URLLoader 是一个静态方法,可以通过类名直接调用
        JsoupDemo.URLLoader("http://www.ygdy8.net/html/gndy/index.html");
    }

    public static void URLLoader(String url){
   
        Document d1;

        try {
   
            //通过Jsoup类中的静态方法connect返回Document对象,该document对象实际为整个html页面内容。
            d1 = Jsoup.connect(url).get();
            System.out.println("网页的标题是:" + d1.title() + "\n");

            /**
             * 1. 分析网页结构,发现我们想要的国内电影下载排行榜,所对应的class样式为co_content2,
             * 2. 可以通过属性、后代选择器选中元素" div[class=‘co_content2’] ul a" ,然
             * 3. 后通过Element类中的text()方法获取文本内容
             */
            Elements es = d1.select
  • 17
    点赞
  • 108
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于使用Java编写网络爬虫,我们可以使用Jsoup库来进行HTML解析和数据抓取。 首先,您需要在项目中引入Jsoup库。您可以在Maven或Gradle构建工具中添加以下依赖项: Maven: ```xml <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.13.1</version> </dependency> ``` Gradle: ```groovy implementation 'org.jsoup:jsoup:1.13.1' ``` 接下来,您可以使用Jsoup来获取和解析网页内容。以下是一个简单的示例代码,演示如何使用Jsoup来爬取网页并提取所需的数据: ```java import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; import java.io.IOException; public class WebCrawler { public static void main(String[] args) { try { // 使用Jsoup连接到目标网页 Document document = Jsoup.connect("http://example.com").get(); // 使用CSS选择器提取所需的元素 Elements links = document.select("a[href]"); // 遍历并打印提取到的元素 for (Element link : links) { System.out.println("Link: " + link.attr("href")); System.out.println("Text: " + link.text()); } } catch (IOException e) { e.printStackTrace(); } } } ``` 在上面的示例中,我们使用`Jsoup.connect()`方法连接到目标网页,并使用`document.select()`方法使用CSS选择器提取所有带有`href`属性的链接元素。然后,我们遍历这些链接元素,并打印出链接的URL和文本。 您可以根据自己的需求进一步扩展和修改代码来满足特定的爬虫需求。请注意,在编写爬虫时,请遵守相关网站的使用条款和政策,以避免违反规定。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值