如何利用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)
上一篇 2023-05-12 03:10:33
下一篇 2023-05-12 03:11:39

相关推荐

  • 三大股指再度翻绿 创业板指早盘10分钟振幅达到2.5%

    原标题:三大股指再度翻绿 创业板指早盘10分钟振幅达到2.5% 来源:上海证券报·中国证券 上证报中国证券网讯(记者 费天元)周二,A股早盘宽幅震荡,三大股指集体低开后一度急速翻红,随后又全部翻绿。截至9:40,上证指数跌幅超过0.7%,深证成指、创业板指跌幅均超过1%。上证指数早盘10分钟振幅达到1.5%,创业板指早盘10分钟振幅达到2.5%。 【今日市况…

    2023-05-11
    136
  • 环球捕手助力高校创业 第四届福建省(厦门)大学生电子商务论坛

    12月3日,“第四届福建省(厦门)大学生电子商务论坛”在厦门理工学院举办,该论坛围绕大”学生创业“、”校企合作“两大议题展开。环球捕手作为电商创业平台代表,表达了对大学生创业的全力支持。 本次论坛主办方,厦门理工学院经管学院院长陈占葵在致辞中表示,此次论坛响应了李克强总理“大众创业、万众创新”政策,为厦门高校与高校、高校与企业间的相互交流、合作提供了平台,5…

    创业分享 2023-05-20
    119
  • 开启零经验创业模式,魅扬洗衣液期待你的加入

      现在,很多酒店、宾馆、饭店等企事业单位都成为魅扬洗衣液的忠实客户,更有不少普通民众来到这里购买洗衣液,为品牌合作者们带来了丰厚的效益回报。相比其他的投资项目,魅扬洗衣液的投入成本不高,品牌扶持却相当给力,经营效益当然更有保障。如果你现在正寻找创业投资项目,不妨先从魅扬洗衣液考虑吧,相信它肯定不会让你失望的。   魅扬洗衣液在技术上实行总部统一培训指导模式…

    创业分享 2023-05-16
    119
  • 小康短板如何补·就业创业

      卢克平代表(河南大学党委书记)   精准服务帮助大学生就业   政府工作报告提出,今年高校毕业生820多万人,再创历史新高,要促进多渠道就业,支持以创业带动就业。“大学生就业,关乎产业结构转型升级,关乎高等教育改革,关乎毕业生个人发展,也关系到千千万万家庭的福祉。”卢克平代表说。   他认为,破解大学生就业难,大学责无旁贷,必须提供“精准服务”,包括精准…

    创业分享 2023-05-17
    105
  • 大众创业的浙江故事:残疾人投身“双创”成新亮色

      在杭州,仅陆晓英所在的富阳区,便已开设189家残疾人电子服务站。在萧山区靖江街道,通过电商孵化基地的打造,使得25户残疾人家庭在家开起了网店。在丽水,去年以来已有630名残疾人从事电子商务,其中该市电子商务孵化中心入驻孵化43人,孵化成功率达58%。在台州市天台县,目前已有近百名残疾人通过残疾人创业园加入到网络创业潮流中。   在浙江颇有名气的孔黎翔已创…

    创业分享 2023-05-30
    113

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

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