用Requests+Cookie,轻松获取淘宝商品数据!

简介: 大家好,我是志斌!最近身边一直有朋友说用Selenium无法爬取淘宝的商品数据了,问问有没有其他的爬取方式,来获取淘宝的商品数据。方法当然有了,下面我就给大家介绍一个Requests+Cookie来获取淘宝数据的方法。

大家好,我是志斌!

最近身边一直有朋友说用Selenium无法爬取淘宝的商品数据了,问问有没有其他的爬取方式,来获取淘宝的商品数据。方法当然有了,下面我就给大家介绍一个Requests+Cookie来获取淘宝数据的方法。



构造URL


我们进入到淘宝商品数据页面,按F12打开开发者模式,对页面进行观察,我们发现淘宝页面是Ajax方式加载的,而且它的接口参数很复杂且没有固定的规律,但是Selenium又被淘宝反爬限制了,所以我们不能使用Ajax来获取商品数据。

在这时,我突然发现页面的数据在源网页里面存放着。如图:


34.jpg


发现数据在源网页中进行存储,使得我们解决了URL的构造问题。但是又有一个新的问题来了,就是在我们进入商品页面时需要登录,如果我们直接用Requests去访问商品页面的话,是会被淘宝的反爬所限制的,所以我们现在要解决这个问题。


提取数据


我们通过对数据存储方式进行观察发现,用正则表达式来对数据进行提取是最为方便的。代码如下:


shangpinming = re.findall('"raw_title":"(.*?)"',response.text)
jiage = re.findall('"view_price":"(.*?)"',response.text)
fahuodi = re.findall('"item_loc":"(.*?)"',response.text)
fukuanrenshu = re.findall('"view_sales":"(.*?)人付款"',response.text)
dianpumingcheng = re.findall('"nick":"(.*?)"',response.text)



数据存储


在之前的文章我们已经详细讲过了数据存储的各种方式,有不懂的朋友可以看看这篇文章一文教会你,爬虫数据如何存储。我们这里直接放入代码


csv_file = open('pingban_1.csv', 'a', newline='', encoding='utf-8')
writer = csv.writer(csv_file)
for i in range(44):
   try:
       writer.writerow([dianpumingcheng[i],shangpinming[i],jiage[i],fahuodi[i],fukuanrenshu[i]])
       with open('shangpinmingcheng_1.txt','a',encoding='utf-8') as f:
           f.write(shangpinming[i])
   except:
       pass
csv_file.close()


让我们来看看存储的数据:


35.jpg


结论


1. 本文详细的介绍了如何用Requests+Cookie来获取淘宝数据,请读者仔细阅读,并加以操作。

2. 有读者说自己构造不好请求命令中的Cookie和Headers,我给大家找了一个简单的方法就是用cURL的方式可以直接构造好请求命令。为了防止一些伸手党和不礼貌党,有需要的读者可以后台加作者微信来领取。

相关文章
|
4月前
给requests请求添加cookie
给requests请求添加cookie
45 0
|
Python
python3 requests获取网页cookie并打印
最近自己和伙伴写的项目涉及前后端完全分离多个客户端,自己测试登录接口想利用请求获取Cookie中的sessionid作为状态通信和身份认证的信息。请求获取cookie打印的函数找了半天。于是就记下来,给需要的同学和自己以后。
430 0
python3 requests获取网页cookie并打印
|
Web App开发 JavaScript API
使用ES6的fetch API读取数据时要注意的一个和cookie相关的坑
使用ES6的fetch API读取数据时要注意的一个和cookie相关的坑
使用ES6的fetch API读取数据时要注意的一个和cookie相关的坑
|
数据可视化 搜索推荐
使用cookie实现大屏数据“千人千面”
DataV页面嵌入自己的业务系统后,如果实现不同用户登录看到不同的数据?“由服务器发起请求(HTTP 代理)”和“需要 cookie (不选择代理并且需要获取cookie时使用)”,这两个选项是做什么用的呢?用户又该如何配置?
14152 0
|
Web App开发 安全 数据安全/隐私保护
|
存储 安全 数据安全/隐私保护
cookie是指web浏览器存储的少量数据,该数据会在每次请求一个相关的URL时自动传到服务器中(转)
  基本概念:cookie是指web浏览器存储的少量数据,该数据会在每次请求一个相关的URL时自动传到服务器中。   以博客园为例,我们看看cookie有哪些属性:   1、Name:cookie的名称;   2、Value:cookie名称对应的值;   3、Domain:设置cookie作用域。
1062 0