如何利用Java爬取网站数据?

1.Jsoup介绍

  - 官网文档:https://jsoup.org

  - Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。

  2. Jsoup快速入门

  - 获取网页标题

  String url = “https://search.jd.com/Search?keyword=手机&wq=手机&page=1”;   Document document = Jsoup.connect(url).get();   String title = document.select(“title”).text();   System.out.println(title);   “`

  - 运行效果:手机 – 商品搜索 – 京东

  3. 网站数据分析

  3.1 分析网站的访问地址

  - 以京东商城为例,商品分页列表的url地址,需要带如下几个参数,因此,在发送http请求时,需要携带正确的参数。

  - URL:

https://search.jd.com/Search?keyword=手机&wq=手机&page=1

  3.2 分析网站的页面结构

  - 通过浏览器的开发者工具,可以分析出页面中我们需要的html结构。

<img src=“assets/image-20220717171103097.png” alt=“image-20220717171103097” style=“zoom:67%;” />

– 可以看出,我们需要的商品数据,封装在一个id=J_goodsList的div标签中,我们可以方便的通过DOM解析出这块数据。

  4. 实战实现过程

  - 获取第1页的商品基本数据

public static void main(String[] args) throws Exception { //第1页地址 String url = “https://search.jd.com/Search?keyword=手机&wq=手机&page=1”; //发送http请求 Document document = Jsoup.connect(url).get(); //在id=J_goodsList的div下,获取所有带有data-sku属性的li标签 Elements lis = document.select(“div[id=J_goodsList] li[data-sku]”); lis.forEach( li -> { //获取商品sku String sku = li.attr(“data-sku”); //获取商品name String name = li.select(“div[class=p-name p-name-type-2] a em”).text(); //获取商品图片地址 String img = li.select(“div[class=p-img] a img[data-lazy-img]”).attr(“data-lazy-img”); System.out.println(String.format(“%s, %s, %s”, sku, name, img)); } ); }

  - 效果预览

如何利用Java爬取网站数据?

  - 改造为分页获取

public static void main(String[] args) throws Exception { //第N页地址 String url = “https://search.jd.com/Search?keyword=手机&wq=手机&page=” + i; //发送http请求 Document document = Jsoup.connect(url).get(); //在id=J_goodsList的div下,获取所有带有data-sku属性的li标签 Elements lis = document.select(“div[id=J_goodsList] li[data-sku]”); lis.forEach( li -> { //获取商品sku String sku = li.attr(“data-sku”); //获取商品name String name = li.select(“div[class=p-name p-name-type-2] a em”).text(); //获取商品图片地址 String img = li.select(“div[class=p-img] a img[data-lazy-img]”).attr(“data-lazy-img”); System.out.println(String.format(“%s, %s, %s”, sku, name, img)); } ); }

免责声明:文章内容来自互联网,本站仅作为分享,不对其真实性负责,如有侵权等情况,请与本站联系删除。
转载请注明出处:如何利用Java爬取网站数据? https://www.dachanpin.com/a/cyfx/11333.html

赞 (0)
程序员发帖:从面试到谈薪只用了3天,这种公司能去吗?
上一篇 2023-05-12 03:10:33
程序员35岁就会失业?这是我听过最好的答案
下一篇 2023-05-12 03:11:39

相关推荐

  • 创业公司如何在硅谷不断成长进化?

    日前,腾讯青腾创业营首次开启“硅谷思路”游学计划,于6月底开始分两期共携50余位学员企业高管前往美国“硅谷”探寻前沿创新,参访Google、Twitter、YouTube、Airbnb等30余家全球互联网巨头及新兴科技企业,与这些企业的高管面对面对话交流。 微信编辑器 构思编辑器 当地时间6月27日上午,首批学员走进知名企业协作软件公司Moxtra,Moxt…

    创业分享 2023-06-16
  • 看秦始皇、汉高祖、成吉思汗、毛主席是如何创业的

    看秦始皇、汉高祖、成吉思汗、毛主席是如何创业的!【必读】 来源:北京大教育考试评价中心 原标题:看秦始皇、汉高祖、成吉思汗、毛主席是如何创业的!【必读】 很多事情,看似隔行如隔山,但隔行不隔理。比如,闹革命,打天下,建立政权同经营企业,二者内在的道理却有着很多相似之处,因为无论是打天下,还是经营企业,都是一个创业的过程,而这个过程都是由领袖带领追随者完成的。…

    2023-05-23
  • 眼镜店如何经营?解析阿里眼镜联合会的全新“创业者思路”

    长期以来,眼镜均作为一种矫正视力的功能性工具存在,眼镜的消费者多存在于学生阶层。不过,近些年来,伴随着人们可支配收入的显著提高、消费心理的逐步改变,眼镜的消费需求开始逐步走向多元化、个性化。各种学生专用镜、大学生专用镜、电脑专用镜、运动专用镜、驾驶专用镜、智能老花镜、军警专用镜等功能性眼镜的出现让中国眼镜市场进一步细分,并在客源上实现显著提高。 以阿里眼镜联…

    2023-05-13
  • 创业型企业如何更高效的提升产能?施特伟科技提供助力

      本网8月30日讯 如今是一个全民创业的年代,许多初创型企业因为站对了风口以及优秀的服务能力和团队,业务发展非常快,导致管理上会逐步显露出一些问题。这类企业通常规模不大,人员不多,管理具有一定的随意性;但人少并不代表HR工作轻松,反而经常出现一人多岗的状况,从员工入职到离职、薪酬、休假、考勤等等,样样亲力亲为,全程参与。HR部门身兼招聘、人事、行政、后勤甚…

    2023-05-12
  • 辽宁大连:选聘256名创业指导师 助力青年圆梦

      据了解,大连市创业导师服务领域涵盖了电子商务、财税法律、金融投资、人力资源、创业策划、市场营销等多个领域。   自2015年起,大连市人社局面向社会公开选聘创业导师,搭建创业导师服务平台,全市共享创业导师资源。多年来,这支创业导师队伍吸引了各行业成功的创业企业家、优秀个体经营者、高等院校科研院所的专家学者以及相关政府部门人员等共同参与。“帮助创业者弥补经…

    创业分享 2023-05-13

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

工作时间:周一至周五,9:30-16:30,节假日休息