前言
考虑到大家期末课程作业或毕业设计等需要数据作为支撑,或者需要提交代码编程作业。本系列分别用三篇文章:京东、淘宝、拼多多数据爬取来讲述数据爬取过程,即便是python入门级小白也能掌握。本篇文章为拼多多爬取教程。(ps:拼多多爬取的坑在于拼多多把数据藏在html文件里面,得用正则匹配和处理数据)
一、安装&导入依赖库
(1)安装库
%pip install DrissionPage pandas openpyxl
(2)导入依赖
# 爬虫库,使用谷歌模拟器
from DrissionPage import ChromiumPage
import re # 正则表达式库
import json # JSON解析库
import pandas as pd # 办公操作库
from datetime import datetime # 时间库
说明:
DrissionPage:用于浏览器自动化操作re:用于正则表达式匹配,提取嵌入在页面中的数据json:用于解析JSON格式的数据pandas:用于数据处理和导出Exceldatetime:用于生成带时间戳的文件名
二、初始化浏览器并访问拼多多
创建浏览器实例并访问拼多多搜索页

driver = ChromiumPage()
driver.get('https://mobile.pinduoduo.com/relative_goods.html?__rp_name=search_view&source=index&options=3&shade_words=%E7%BA%B8%E5%B7%BE%E6%8A%BD%E7%BA%B8&ssr_histories=%5B%22%E9%AB%98%E6%A1%A3%E6%AD%A3%E5%93%81%E8%BD%BB%E8%96%84%E7%BE%BD%E7%BB%92%E6%9C%8D%22%5D&refer_page_name=index&refer_page_id=10002_1761990623118_tf6j8y73ut&refer_page_sn=10002')
关键点:
- 实例化浏览器对象:创建
ChromiumPage对象 - 直接访问拼多多移动版搜索页:拼多多的移动版页面结构更简单,数据更容易获取
为什么访问移动版?
- 移动版页面结构更清晰
- 数据加载方式更直接
- 反爬机制相对较弱
三、启动网络请求监听
启动监听器

# 启动监听
driver.listen.start('search_result.html')
监听原理:
- 拼多多在搜索时会请求
search_result.html页面 - 这个页面包含完整的商品数据
- 通过监听这个请求,我们可以获取原始HTML内容
与淘宝监听的区别:
- 淘宝:监听JSON接口(
mtop.relationrecommend) - 拼多多:监听HTML页面(
search_result.html),但数据嵌入在页面的JavaScript变量中
四、模拟用户搜索操作
4.1 输入搜索关键词
driver.ele('css:form input[type="search"]').input('键盘')
- 使用CSS选择器定位搜索框:
form input[type="search"] - 输入搜索关键词"键盘"
- 可以替换成任何你想搜索的商品
4.2 点击搜索按钮
driver.ele('css:.RuSDrtii').click()
- 使用CSS选择器定位搜索按钮(class名为
RuSDrtii) - 点击按钮触发搜索
4.3 等待页面加载
driver.wait(3)
等待3秒,确保搜索结果页面完全加载。
3773



&spm=1001.2101.3001.12003&articleId=154303262&d=1&t=3&u=cc8c502ee3fc432e8a63b8f6ebdc9514)

被折叠的 条评论
为什么被折叠?



