Java爬虫爬取京东商品信息

匿名 (未验证) 提交于 2019-12-02 21:53:52

<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或者博客园留言,看到必回!

如有转载,请自觉贴上本帖地址,谢谢合作!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!