Java程序中使用 Jsoup 爬蟲( 簡單示例 )


一、maven項目里pom添加jsoup依賴

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

以抓取CSDN主頁的右側導航欄為例

代碼示例:

復制代碼
 1 package com.oukele.csdn_demo;
 2 
 3 import org.jsoup.Jsoup;
 4 import org.jsoup.nodes.Document;
 5 import org.jsoup.nodes.Element;
 6 import org.jsoup.select.Elements;
 7 
 8 import java.io.IOException;
 9 
10 public class CsdnCrawlDemo {
11 
12     public static void main(String[] args) {
13         //目標地址
14         String url = "https://www.csdn.net/";
15         try {
16             Document document = Jsoup
17                     .connect(url)
18                     .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")
19                     .get();
20             //  右側導航欄
21             Elements nav_com = document.getElementsByClass("nav_com");
22             Elements elements = nav_com.select("ul>li");
23             for (Element element : elements) {
24                 System.out.println("導航標題:"+element.text()+"\t標題訪問地址:"+element.select("a").attr("href")+"\r\n");
25                 //這里 我們可以 根據 得到的訪問鏈接 再進行 爬取.........
26             }
27         } catch (IOException e) {
28             System.out.println("出現錯誤:"+e.getMessage());
29         }
30 
31 
32     }
33 
34 }
復制代碼

運行結果:

復制代碼
 1 導航標題:推薦    標題對應的鏈接:/
 2 
 3 導航標題:最新文章    標題對應的鏈接:/nav/newarticles
 4 
 5 導航標題:關注    標題對應的鏈接:/nav/watchers
 6 
 7 導航標題:資訊    標題對應的鏈接:/nav/news
 8 
 9 導航標題:人工智能    標題對應的鏈接:/nav/ai
10 
11 導航標題:雲計算/大數據    標題對應的鏈接:/nav/cloud
12 
13 導航標題:區塊鏈    標題對應的鏈接:https://blockchain.csdn.net
14 
15 導航標題:數據庫    標題對應的鏈接:/nav/db
16 
17 導航標題:程序人生    標題對應的鏈接:/nav/career
18 
19 導航標題:游戲開發    標題對應的鏈接:/nav/game
20 
21 導航標題:研發管理    標題對應的鏈接:/nav/engineering
22 
23 導航標題:前端    標題對應的鏈接:/nav/web
24 
25 導航標題:移動開發    標題對應的鏈接:/nav/mobile
26 
27 導航標題:物聯網    標題對應的鏈接:/nav/iot
28 
29 導航標題:運維    標題對應的鏈接:/nav/ops
30 
31 導航標題:計算機基礎    標題對應的鏈接:/nav/fund
32 
33 導航標題:編程語言    標題對應的鏈接:/nav/lang
34 
35 導航標題:架構    標題對應的鏈接:/nav/arch
36 
37 導航標題:音視頻開發    標題對應的鏈接:/nav/avi
38 
39 導航標題:安全    標題對應的鏈接:/nav/sec
40 
41 導航標題:其他    標題對應的鏈接:/nav/other


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM