【更新说明】项目代码已在2024年12月02日19点30进行更新,如有问题可评论或私信与我联系!
项目介绍
代码部分
引用第三方库
全局定义
主函数
爬虫主函数代码
搜索“关键词”
翻页函数代码
编辑
获取商品列表信息代码
完整代码
项目使用ChromeDriver插件,基于Python的第三方库Selenium模拟浏览器运行、PyQuery解析和操作HTML文档,获取淘宝平台中某类商品的详细信息(商品标题、价格、销量、商铺名称、地区、商品详情页链接、商铺链接等),并基于第三方库openpyxl建立、存储于Excel表格中。
【说明】若允许代码出现翻译错误、代码能正常运行但是Excel没有数据等问题,可能是淘宝网页更新了父元素类选择器的缘故,大家可以参照教程检查一下元素是否更新;若网页元素更新,则可参照教程自行修改;【爬虫】教你如何获取淘宝网页父元素类选择器标签(超详细)-CSDN博客
效果预览:
【第三方库】主要运用到PyQuery、selenium、openpyxl等Python的第三方库;如若缺失,使用pip指令安装即可。
【ChromeDriver下载与安装】若运行过程中出现如下问题,可能是ChromeDriver版本与Chrome版本不一致导致,需要对ChromeDriver进行更新。ChromeDriver下载与安装:手把手教你,ChromeDriver下载与安装
输入初始参数:
- 爬取商品的关键词KEYWORD
- 爬取网页的起始页pageStart
- 爬取网页的终止页pageEnd
1、建立Excel表格,并设置第一行(表头);
2、调用爬虫主函数Crawer_main,启动爬虫程序;
3、输出.xlsx格式文件。
(输入)效果预览:
1、ChromeDriver服务请求淘宝(https://www.taobao.com)服务,模拟浏览器运行,找到“输入框”输入关键词KEYWORD,并点击“搜索”按键;
2、若弹出登录窗口,使用手机“淘宝”APP,扫码登录(如图所示);
【注意】抓紧时间完成登录,若出现error,则重新运行代码,尽快登录;超时可能出现error
3、判断PageStart是否为1;若PageStart不为1,跳转至PageStart所在页;
4、调用get_goods获取起始页PageStart的商品列表信息;
5、调用page_turning翻页进行翻页,并爬取第PageStart+1页到第PageEnd页商品信息。
淘宝登录界面示意图:
ChromeDriver服务请求淘宝(https://www.taobao.com)服务,模拟浏览器运行,找到“输入框”输入关键词KEYWORD,并点击“搜索”按键。
1、翻页函数page_turning,搜索并点击“下一页”按键,判断页码是否相等;若页码相等获取该页商品列表信息;
2、翻页初始页函数turn_pageStart,找到页码输入框,输入初始页页码,点击“确认”按键跳转至初始页。
“下一页”按键示意图:
1、滑动页面至页码选择界面(如图所示),待页面所有信息加载完成后,输入数字“1”开始爬取当前页内容;
2、pyquery请求HTML页面信息,并进行解析;
3、商品详细信息(商品标题、价格、销量、商铺名称、地区、详情页链接、商铺链接等)
4、将获取的信息写入字典和Excel表格中;
淘宝界面页码选择界面示意图:
获取商品列表信息示意图:
【说明】考虑到浏览器请求数据时间长短不定,代码由“定时延时方式”改为“手动输入方式”以便留足时间等待数据请求完成;请求数据期间,可手动滑动淘宝界面,加载商品详情【注意:滑动到页面选择位置即可】加载完成后,输入数字“1”开始爬取当前页商品详情(如下图所示)。
使用视频教程:
【不足】不足之处,恳请批评指正,我们共同进步!