如何使用JAVA爬取网站数据?

1. Jsoup介绍官网文档:https://jsoup.orgJsoup 是一款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=13.2 分析网站的页面结构通过浏览器的开发者工具,可以分析出页面中我们需要的html结构。
如何使用JAVA爬取网站数据?
可以看出,我们需要的商品数据,封装在一个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/11691.html

(0)
上一篇 2023-05-12 03:35:20
下一篇 2023-05-12 03:36:26

相关推荐

  • 具有代表性的数据分析工具有哪些?提供创业效率

    以下是几个常用的数据分析工具: Python:Python是一种非常流行的编程语言,具有广泛的应用,包括数据处理、数据可视化和机器学习等。Python中的NumPy、Pandas、SciPy等工具具有强大的数据处理和分析能力,可以帮助用户进行各种数据分析。 R语言:R语言是一种类似于Python的高级编程语言,主要用于数据分析和计算。R语言生态系统内置了各种…

    创业分享 2023-05-10
    92
  • 创业板指创出年内新高

    板块方面:5G板块表现强势:佳力图、东方通信、贝通信、初灵信息涨停;猪肉概念大幅飙升:正邦科技、天邦股份涨停。 6、据河北日报2月11日消息,近日,《河北省县域科技创新跃升计划(2019-2025年)》正式发布,按照分类指导、科学施策、典型带动、梯次推进的原则,激励和引导县域加快推进以科技创新为核心的全面创新。 9、据北京日报2月11日消息,近日,北京市经信…

    创业分享 2023-05-13
    119
  • 紫荆谷创新创业发展辅导中心”第三期“港澳台侨青年创业家成长营

    原标题:“中山大学-紫荆谷创新创业发展辅导中心”第三期“港澳台侨青年创业家成长营”顺利开营   6月9日上午,“中山大学—紫荆谷创新创业发展辅导中心”第三期项目港澳台侨青年创业家成长营隆重开营。我校副校长肖海鹏、捐赠方代表经纬集团执行董事陈丹丹等人出席仪式。   肖海鹏在致辞中表示,作为中国西医的发源地,中山大学始终与国家的发展同心同向同行,始终服务国家战略…

    创业分享 2023-05-16
    81
  • 东方创业(600278)

    时间 交易提示 提示详情 2016-07-12变更调整股东大会通过,调整公司向特定对象非公开发行股票方案,公司非公开发行A股股票预案(… 2016-07-11召开股东大会提示召开2016年第二次临时股东大会。 2016-06-30资产交易公布关于出售海通证券股票的公告 2016-06-23召开股东大会提示召开2015年年度股东大会,审议2015年…

    创业分享 2023-05-30
    98
  • 沪指站上3100点 创业板指涨近2%

    沪指站上3100点 创业板指涨近2%   上证报中国证券网讯 1月6日早盘,A股三大股指低开高走,沪指站上3100点。截至11:26,上证指数报3100.34点,上涨16.55点,涨0.54%,成交额1827.99亿元;深证成指报10783.14点,上涨126.73点,涨1.19%,成交额2661.74亿元,两市合计成交额4489.73亿元;创业板指报187…

    创业分享 2023-05-12
    74

发表回复

登录后才能评论

联系我们

在线咨询: QQ交谈

邮件:362039258@qq.com

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