Python requests爬取淘宝商品信息
作者:achen
联系方式:wh909077093
这里记一下大概的思路以及实现方法,有基础的小伙伴看了基本就能实现了,如果有业务需要可以联系我哈哈哈哈哈哈
本文代码参考猪哥66的思路
项目内容
指定关键词爬取淘宝上商品标题-价格-销量-店铺-地区
爬取测试关键词是「防伪」,排序规则选择为总价「由低到高」
项目起因
最近接了一单,需要爬取某地区所有的天猫店铺,于是博主用十来个账号对各个关键词进行了疯狂的扫描,终于扫出来了几万个店铺名~~
项目步骤
1、手动登录淘宝,拿到几个关键参数
username
ua
password2
csrf_token
umidToken
hsiz
这几个参数,通过火狐登录 https://login.taobao.com/ 之后,打开高级模式,然后登录,之后搜索一下参数名就可以找到,这几个参数大概3天左右变化一次?具体的规律目前没有掌控
2、携带参数,获取cookie
# 检测是否需要验证码的URL
user_check_url = 'https://login.taobao.com/newlogin/account/check.do?appName=taobao&fromSite=0'
# 验证淘宝用户名密码URL
verify_password_url = "https://login.taobao.com/newlogin/login.do?appName=taobao&fromSite=0"
# 访问st码URL
vst_url = 'https://login.taobao.com/member/vst.htm?st={}'
# 淘宝个人 主页
my_taobao_url = 'http://i.taobao.com/my_taobao.htm'#1 验证用户名密码verify_password_headers = {'Connection': 'keep-alive','Cache-Control': 'max-age=0','Origin': 'https://login.taobao.com','Upgrade-Insecure-Requests': '1','User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36','Content-Type': 'application/x-www-form-urlencoded','Referer': 'ttps://login.taobao.com/member/login.jhtml?spm=a21bo.2017.754894437.1.5af911d9mlqEnw&f=top&redirectURL=https%3A%2F%2Fwww.taobao.com%2F',
}verify_password_data = {'loginId': username,'password2': password2,'keepLogin': 'false','ua': ua,'umidGetStatusVal': '255','screenPixel': '1440x900','navlanguage': 'zh-CN','navUserAgent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36','navPlatform': 'MacIntel','appName': 'taobao','appEntrance': 'taobao_pc','_csrf_token': csrf_token,'umidToken':umidToken,'hsiz': hsiz,'bizParams': '','style': 'default','appkey': '00000000','from': 'tbTop','isMobile': 'false','lang': 'zh_CN','returnUrl': 'https://www.taobao.com/','fromSite': '0'
}response = requests.Session().post(verify_password_url, headers=verify_password_headers, data=verify_password_data,timeout=timeout)st_url_match = re.search(r'"(https://passport.*?)"', response.text)st_url = st_url_match[0].replace("\"", '')response = requests.Session().get(apply_st_url)
st_match = re.search(r'"data":{"st":"(.*?)"}', response.text)
st = st_match.group(1)
headers = {'Host': 'login.taobao.com','Connection': 'Keep-Alive','User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.135 Safari/537.36',
}
response = requests.Session().get(vst_url.format(st), headers=headers)
正常的话到这里就是登录成功了,具体的检测呀,优化呀,我就不发在这里了
3、带cookie,访问搜索页,注意:这里只能访问商品搜索页,店铺搜索页那里接口不一样,访问3-5页之后就会被禁,这也是疯狂扫描的原因。。。
下面上个截图
Python requests爬取淘宝商品信息相关推荐
- python简单爬取淘宝商品信息
爬取淘热卖商品"泡面"的信息,包括商品名称,店铺,链接,付款人数,价格等,用csv保存 import requests import csv import time import ...
- python爬虫 — 爬取淘宝商品信息
(一)确定需要爬取的信息 在爬取前首先确定需要获取的信息,打开taobao,在搜索框中输入,需要获取的商品的信息,比如ipad,点击搜索 就可以看到许多的ipad,选择其中的一款商品,比如第一个 可以 ...
- Python搜索爬取淘宝商品信息并存储为csv文件(名称、店铺、销量、地址等)
功能是搜索商品,并把搜到的商品信息一一爬取(多个页面): 爬取商品名称.店铺名称.销量.评论数量.地址等等,然后把信息存储为csv文件- 效果: 首先是程序运行 运行完后可以看到目录下出现了一个csv ...
- 使用python selenium爬取淘宝商品信息 自动登录淘宝和爬取某一宝贝的主图,属性图和详情图等等
selenium作为一个自动化测试工具非常好用,谁用谁知道啊. 先说如何登录淘宝,淘宝现在直接用会员名和密码登录会有滑块验证,找了网上说的几种方法和自己尝试了一番效果还是不太理想,实测过程中,即使滑块 ...
- python+selenium爬取淘宝商品信息+淘宝自动登录——爬虫实战
1.前言 继续学习爬虫内容,这回是以selenium模拟操作进行抓取,其中有几个需要登陆的注意事项. 2.自动登陆+查找页面 由于现在淘宝的反爬机制,需要登陆才好下一步操作.在搜索输入后页面会调入登陆 ...
- 使用python爬取淘宝商品信息
使用python爬虫爬取淘宝商品信息 使用的模块主要有 selenium ,time , re, from selenium import webdriver import time import c ...
- Python爬取淘宝商品信息保存到Excel
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理. PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取 python免费学习资 ...
- python+scrapy简单爬取淘宝商品信息
python结合scrapy爬取淘宝商品信息 一.功能说明: 已实现功能: 通过scrapy接入selenium获取淘宝关键字搜索内容下的商品信息. 待扩展功能: 爬取商品中的全部其他商品信息. 二. ...
- python爬虫——用selenium爬取淘宝商品信息
python爬虫--用selenium爬取淘宝商品信息 1.附上效果图 2.淘宝网址https://www.taobao.com/ 3.先写好头部 browser = webdriver.Chrome ...
最新文章
- R 循环中将变量作为对象名
- 平板电脑计算机怎么关按键音,平板电脑输入法怎么设置【图解】
- github使用个人总结
- cannot resolve symbol ‘R‘ 程序包R不存在
- Win7的市场份额终于超过XP了,以后可以逐渐考虑放弃ie6/7了!
- 腾讯云学生机介绍—校园扶持计划
- 有道翻译API接口的服务开通与使用Python进行接口调用实例演示,有道智云·AI开放平台
- Facial Expression Recognition
- matlab打开界面模糊,matlab模糊逻辑(一)
- nodejs 运行后报错 Error: Couldn‘t find preset “es2015“ relative to directory
- 庄懂的TA笔记(六)<FakeEnvReflect 生锈,锈迹效果>
- JS-节点的属性 获取各种节点(全)
- split函数的用法——java
- windows10上传文件到服务器
- 天空之城 matlab,天空之城钢的琴版,完美设计,完美视听。
- 安卓APP发布上架的方法
- 游戏创造中的基本理论体系(上)
- 驶向数字智能的瀚海,“懂行人”助力石油人乘风破浪
- linux u盘weiyi,petalinux 中怎么加入u盘
- 如何用通过Unity 3D生成真实地形
热门文章
- Odrive_0.5.5运行代码分析_(三)_GPIO详解
- 特斯拉充电电流设置多大_特斯拉电动汽车充电规格?
- ORA-01422: exact fetch returns more than requested number of rows
- Linux安装phpstudy(无联网版)
- Taurus_Linux
- ati hd 6470m驱动
- SE 的 ONNX 图
- 微信支付 body不是UTF编码格式
- 如何使用python-hwinfo获取Linux硬件信息?
- linux Qt 复制文件至剪切板