Java程序中使用 Jsoup 爬虫( 简单示例 )

maven项目里pom添加 jsoup 依赖

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

以抓取****主页的右侧导航栏为例

Java程序中使用 Jsoup 爬虫( 简单示例 )

代码示例:

package com.oukele.****_demo;

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 CsdnCrawlDemo {

    public static void main(String[] args) {
        //目标地址
        String url = "https://www.****.net/";
        try {
            Document document = Jsoup
                    .connect(url)
                    .header("user-agent","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.80 Safari/537.36")
                    .get();
            //  右侧导航栏
            Elements nav_com = document.getElementsByClass("nav_com");
            Elements elements = nav_com.select("ul>li");
            for (Element element : elements) {
                System.out.println("导航标题:"+element.text()+"\t标题访问地址:"+element.select("a").attr("href")+"\r\n");
                //这里 我们可以 根据 得到的访问链接 再进行 爬取.........
            }
        } catch (IOException e) {
            System.out.println("出现错误:"+e.getMessage());
        }


    }

}

运行结果

导航标题:推荐    标题对应的链接:/

导航标题:最新文章    标题对应的链接:/nav/newarticles

导航标题:关注    标题对应的链接:/nav/watchers

导航标题:资讯    标题对应的链接:/nav/news

导航标题:人工智能    标题对应的链接:/nav/ai

导航标题:云计算/大数据    标题对应的链接:/nav/cloud

导航标题:区块链    标题对应的链接:https://blockchain.****.net

导航标题:数据库    标题对应的链接:/nav/db

导航标题:程序人生    标题对应的链接:/nav/career

导航标题:游戏开发    标题对应的链接:/nav/game

导航标题:研发管理    标题对应的链接:/nav/engineering

导航标题:前端    标题对应的链接:/nav/web

导航标题:移动开发    标题对应的链接:/nav/mobile

导航标题:物联网    标题对应的链接:/nav/iot

导航标题:运维    标题对应的链接:/nav/ops

导航标题:计算机基础    标题对应的链接:/nav/fund

导航标题:编程语言    标题对应的链接:/nav/lang

导航标题:架构    标题对应的链接:/nav/arch

导航标题:音视频开发    标题对应的链接:/nav/avi

导航标题:安全    标题对应的链接:/nav/sec

导航标题:其他    标题对应的链接:/nav/other

示例源码: