php 抓取京东搜索页,京东商品列表页爬虫采集方法 - 八爪鱼采集器
采集场景
在京东搜索页 https://search.jd.com/Search 输入关键词搜索,采集搜索后得到的多个商品列表数据。
鼠标放到图片上,右键,选择【在新标签页中打开图片】可查看高清大图
下文其他图片同理
采集字段
商品名称、商品描述、商品详情、价格、评论数、店铺名称、店铺链接等字段。
采集结果
采集结果可导出为Excel,CSV,HTML,数据库等多种格式。导出为Excel示例:
教程说明
本篇制作时间:2020/4/24 八爪鱼版本:V8.1.8
如果因网页改版造成网址或步骤无效,无法采集到目标数据,请联系官方客服,我们将及时修正。
采集步骤
步骤一、打开网页
步骤二、批量输入多个关键词并搜索
步骤三、创建【循环列表】,采集所有商品列表中的数据
步骤四、编辑字段
步骤五、创建【循环翻页】,采集多页数据
步骤六、设置滚动和修改【循环翻页】XPath
步骤七、启动采集
以下为具体步骤:
步骤一、打开网页
在首页【输入框】中输入目标网址 https://search.jd.com/Search ,点击【开始采集】,八爪鱼自动打开网页。
特别说明:
a. 打开网页后,如果开始【自动识别】,请点击【不再自动识别】或【取消识别】将其关掉。因为本文不适合使用【自动识别】。
b. 【自动识别】适用于自动识别网页上的列表、滚动和翻页,识别成功后直接启动采集即可获取数据。详情点击查看【自动识别】教程
步骤二、批量输入多个关键词并搜索
打开网页后,通过以下几步,实现批量输入多个关键词。
1、输入1个关键词并搜索
2、批量输入多个关键词
1、输入1个关键词并搜索
选中京东搜索框,在操作提示框中,点击【输入文本】,输入关键词并保存。
选中【搜索】按钮,在操作提示框中,点击【点击该按钮】,出现关键词的搜索结果。
2、批量输入多个关键词
① 在【打开网页1】步骤后,添加一个【循环】。
② 将【输入文本】和【点击元素】都拖入【循环】中。
③ 进入【循环】设置页面。选择循环方式为【文本列表】,点击
按钮,将我们准备好的关键字输进去(可同时输入多个关键字,一行一个即可)后保存。
④ 进入【输入文本】设置页面,勾选【使用当前循环里的文本来填充输入框】后保存。
特别说明:
a. 示例中输入的关键词是【耐克】、【阿迪达斯】、【李宁】和【安踏】,可根据自身需求进行替换。
b. 一次最多输入2W个关键字。可先准备一个包含多个关键字的文档,然后将其复制粘贴进八爪鱼中。
步骤三、创建【循环列表】,采集所有商品列表中的数据
通过以下连续4步,采集所有商品列表中的数据:
1、选中页面上1个商品列表(注意一定要选中整个列表,包含所有所需字段)
2、在黄色操作提示框中,点击【选中子元素】
3、点击【选择全部】
4、点击【采集数据】
特别说明:
a. 经过以上连续4步,【循环-提取数据】创建完成。【循环】中的项,对应着页面上所有商品列表,【提取数据】中的字段,对应着每个商品列表中的字段。启动采集以后,八爪鱼就会按照循环中的顺序依次提取每个列表中的字段。
b.为何通过以上4步,可建立【循环-提取数据】?详情点击查
步骤四、编辑字段
在【当前页面数据预览】页面,可删除多余字段,修改字段名,移动字段顺序等。
步骤五、创建【循环翻页】,以采集多页数据
1、创建循环翻页
如果只是采集一页数据,可跳过此步骤。
如果需要翻页以采集多页数据:选择页面中的【下一页】按钮,在操作提示上单击【循环点击下一页】,创建【循环翻页】。
特别说明:
a. 创建【循环翻页】后,八爪鱼会自动点击【下一页】按钮进行翻页,从第1页,第2页......直到最后1页。如果只需采集特定页的数据,可在八爪鱼中设置循环翻页的次数,详情
b.在选中【下一页】范围时,选中的范围不同,弹出的提示也不同。如果选中的是最里层的文字【下一页】,黄色操作提示框中弹出的提示是【循环点击下一页】。如果选中的是最整个【下一页】按钮,黄色操作提示框中弹出的提示是【循环点击单个链接】。两者的作用相同,都是为了实现翻页。
步骤六、设置滚动和修改【循环翻页】XPath
1、设置滚动
点击搜索和翻页后,京东默认只显示前30个商品列表。向下滚动页面到底部,才会加载出全部60个商品列表,在八爪鱼中也需设置滚动。
进入【点击元素】和【点击翻页】设置页面,点开【页面加载后】,设置【页面加载后向下滚动】,滚动方式为【向下滚动一屏】,【滚动次数】为6次,【每次间隔】2秒 ,设置后保存。
2、修改【循环翻页】XPath
默认的【循环翻页】XPath会在最后一页重复翻页,导致其他关键词无法输入并采集,需修改【循环翻页】XPath。
进入【循环翻页】设置页面,修改XPath为://a[@class="pn-next"]/EM[text()="下一页"] 。
特别说明:
a. 为什么会不结束翻页?这是因为【循环翻页】默认生成的XPath,在最后1页时,仍然能定位到【下一页】按钮,这就会导致其一直点击【下一页】按钮,不结束翻页。为了解决这个问题,我们需要手动写一条XPath,使之在当前页为非最后一页时,都能定位到【下一页】按钮,以实现不断点击【下一页】按钮进行翻页。同时在当前页为最后一页时,不定位到【下一页】按钮,以结束翻页。这里需要一定的XPath知识。点击查看
b. 设置中的滚动次数和时间间隔,请根据采集需求和网页加载情况进行设置,并非是一成不变的,具体请点击查看 处理滚动加载数据的网页教程
步骤七、启动采集
1、单击【采集】并【启动本地采集】。启动后八爪鱼开始自动采集数据。
特别说明:
a. 【本地采集】是使用自己的电脑进行采集,【云采集】是使用八爪鱼提供的云服务器采集,点击查看 本地采集与云采集详解。
2、采集完成后,选择合适的导出方式导出数据。支持导出为Excel、CSV、HTML、数据库等。这里导出为Excel。
数据示例:
拓展阅读
通过以上操作,我们可以获得一批京东商品详情页链接,可使用
作者:Junjun
编辑:Aisling
php 抓取京东搜索页,京东商品列表页爬虫采集方法 - 八爪鱼采集器相关推荐
- 如何在php搜索显示数据库数据结构_PHP如何实现抓取百度搜索结果并分析数据结构...
PHP如何实现抓取百度搜索结果并分析数据结构 发布时间:2020-09-26 09:26:19 来源:亿速云 阅读:95 作者:小新 这篇文章主要介绍PHP如何实现抓取百度搜索结果并分析数据结构,文中 ...
- Django项目实战——14—(列表页热销排行、商品搜索、Haystack建立数据索引、渲染商品搜索结果、商品详情页)
1.列表页热销排行 根据路径参数category_id查询出该类型商品销量前二的商品. 使用Ajax实现局部刷新的效果. 查询列表页热销排行数据 请求方式 请求参数:路径参数 响应结果:JSON {& ...
- 如何用Python快速抓取Google搜索?
「免费学习 60+ 节公开课:投票页面,点击讲师头像」 作者 | linksc 译者 | 弯月,编辑 | 郭芮 来源 | CSDN(ID:CSDNnews) 自从2011年 Google Web Se ...
- python request url 转义_Python多线程抓取Google搜索链接网页
1)urllib2+BeautifulSoup抓取Goolge搜索链接 近期,参与的项目需要对Google搜索结果进行处理,之前学习了Python处理网页相关的工具.实际应用中,使用了urllib2和 ...
- 如何用 Python 快速抓取 Google 搜索?
本文是通过 requests 和 Beautiful Soup 抓取 Google 搜索的快速指南. 作者 | linksc 译者 | 弯月,责编 | 郭芮 出品 | CSDN(ID:CSDNnews ...
- java抓取百度搜索结果_java实现抓取百度对某站点搜索结果
htmlunit 是一款开源的java 页面分析工具,读取页面后,可以有效的使用htmlunit分析页面上的内容.项目可以模拟浏览器运行,被誉为java浏览器的开源实现.这个没有界面的浏览器,运行速度 ...
- python抓取google搜索结果
1. 搜索引擎的选取 选择一个好的搜索引擎意味着你能够得到更准确的搜索结果.我用过的搜索引擎有四种:Google.Bing.Baidu.Yahoo!. 作为程序员,我首选Google.但当我看见我最爱 ...
- 【Python爬虫教学】百度篇·手把手教你抓取百度搜索关键词后的页面源代码
[开门见山] 最近整理了下之前做过的项目,学的东西不少,乱七八糟.打算写点关于 Python 爬虫的东西,新人一枚,还望大佬们多多担待,别把我头给打歪了. 前面我先磨叽磨叽些基础的东西,对爬虫新人友好 ...
- 抓取安居客二手房经纪人数据,python爬虫自动翻页
为什么80%的码农都做不了架构师?>>> 和链接不一样,安居客网站里面没有找到总页数,可能在json里面有,只是我没有找到. 基于此能不能做网页的循环爬取呢. 能否判断页面读取 ...
最新文章
- android getChildAt(index)返回null问题解决方法
- nacos1.3.2连接mysql_Nacos 1.3.0版本部署连接mysql 8+
- postman导入swagger文档,并设置cookies进行测试
- SQL Server 2005两本教程案例数据库
- 透过汇编另眼看世界之DLL导出函数调用
- devops 开源_没有开源,就不会有DevOps
- First flight, Let's do it!
- iOS.数据持久化.PersistenceLayer.属性列表
- 谈谈js中的异步编程。
- 如何禁用计算机休眠,电脑如何关闭休眠功能,教你电脑如何关闭休眠功能
- C51_将按键次数写入AT24C02,再读出送LCD显示
- java管理系统删除报错_Java版学籍管理系统
- 误删的文件怎么寻回?
- 总结一下用面向对象写法调用借口
- 从程序员的观点看 汉字国标与Unicode
- 邮件内容以html形式,如何以邮件的形式发送HTML文件?
- Java进阶之--------集合
- 基于proe的阀体零件的机械加工工艺及夹具设计
- 花房集团:直播老将终赴IPO
- 6713EDMA总结(一)
热门文章
- weka矿产分布文件_矿产资源国情调查项目组参加技术培训视频会议
- 联想万全服务器 R630 故障处理
- 百度惩罚(k站)之后的诊断方法
- c4droid编译java_C4droid 的多文件编译
- brew 一直等待_去广告神器,一键去除所有主流App广告,看片从此不等待
- 一文步入python大门,基础教程大全(25分钟)
- 已集成 VirtIO驱动windows server 2012, 2008, 2003的ISO镜像下载
- 记录贴:RuntimeError: version_ <= kMaxSupportedFileFormatVersion INTERNAL ASSERT FAILED at /pytorch/caff
- 哈工大操作系统——引导启动程序
- gnuplot 简单函数绘图