Java爬蟲爬取京東商品信息


<strong> java<em style=“color:red;”>爬蟲</em></strong>工具:Jsoup

Maven地址

<dependency>
  <!-- jsoup HTML parser library @ https://jsoup.org/ -->
  <groupId>org.jsoup</groupId>
  <artifactId>jsoup</artifactId>
  <version>1.11.2</version>
</dependency>

 

網頁分析

 

 

商品布局分析:

 

 

 

Java代碼實例:

 1 import org.jsoup.Jsoup;
 2 import org.jsoup.nodes.Document;
 3 import org.jsoup.nodes.Element;
 4 import org.jsoup.select.Elements;
 5 
 6 /**
 7  * 作者:小魚
 8  * 作者唯一QQ號:1132017151
 9  * 
10  * 簡單測試類
11  * 包含內容:京東商品頁查詢
12  * 不包含京東商品排除個性化查詢和后半部動態加載,如有想要了解,請聯系作者
13  * */
14 public class Test {
15     
16     public static void main(String[] args) throws Exception {
17         String url = "https://search.jd.com/Search?keyword=%E6%89%8B%E6%9C%BA&enc=utf-8&psort=3&page=3";//第二頁商品
18         //網址分析
19         /*keyword:關鍵詞(京東搜索框輸入的信息)
20          * enc:編碼方式(可改動:默認UTF-8)
21          * psort=3 //搜索方式  默認按綜合查詢 不給psort值
22          * page=分業(不考慮動態加載時按照基數分業,每一頁30條,這里就不演示動態加載)
23          * 注意:受京東商品個性化影響,准確率無法保障
24          * */
25         Document doc = Jsoup.connect(url).maxBodySize(0).get();
26         //doc獲取整個頁面的所有數據
27         Elements ulList = doc.select("ul[class='gl-warp clearfix']");
28         Elements liList = ulList.select("li[class='gl-item']");
29         //循環liList的數據
30         for (Element item : liList) {
31             //排除廣告位置
32             if (!item.select("span[class='p-promo-flag']").text().trim().equals("廣告")) {
33                 //如果向存到數據庫和文件里請自行更改
34                 System.out.println(item.select("div[class='p-name p-name-type-2']").select("em").text());//打印商品標題到控制台
35             }
36         }
37     }
38 }

運行結果:

如有疑問可加作者QQ或者博客園留言,看到必回!

如有轉載,請自覺貼上本帖地址,謝謝合作!

 


免責聲明!

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



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