zoukankan      html  css  js  c++  java
  • 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或者博客园留言,看到必回!

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

  • 相关阅读:
    【JS】415- JS面向对象之 7 大基本原则
    【每周小回顾】14- 一起回顾上周精彩内容
    【全栈修炼】414- CORS和CSRF修炼宝典
    【全栈修炼】CORS和CSRF修炼宝典
    【JS】413- JavaScript中的位运算和权限设计
    【面试题】412- 35 道必须清楚的 React 面试题
    【CSS】410- 关于CSS盒子模型、BFC及其应用
    15.app后端怎么设计用户登录方案
    14.app后端如何设计api
    13.app后端为什么要用到消息队列
  • 原文地址:https://www.cnblogs.com/xjdoconline/p/9194994.html
Copyright © 2011-2022 走看看