0
点赞
收藏
分享

微信扫一扫

Python爬取天猫店铺列表页的所有数据封装接口教程

1.举例:首页我们有一个起始url:https://goodbaby.tmall.com/shop/view_shop.htm?spm=a230r.7195193.1997079397.2.3RayhH,我们要采取的是它里面所有宝贝,按销量排序,如图:

Python爬取天猫店铺列表页的所有数据封装接口教程_请求参数

点击进去,我们可以看到列表页的链接:

Python爬取天猫店铺列表页的所有数据封装接口教程_请求参数_02

我们查看源代码,可以发现淘宝的商品数据藏在js里面的:

Python爬取天猫店铺列表页的所有数据封装接口教程_请求参数_03

我们找到他的接口 ,直接发起请求,从Headers直接找到他的url,然后对它发起请求,把里面的p改一下,p代表的是当前页数,遍历他的页数。

2.封装接口代码如下:

2.1请求方式:HTTP POST  GET

2.2请求参数:

请求参数:shop_id=433655136&page=1&sort=

参数说明: shop_id:shop_id page:页码
sort:排序[new,bid,sale]
  (new 新品,bid:价格,sale:销量,bid加_前缀为从大到小排序)

2.3公共参数

名称

类型

必须

描述

key

String


调用key(必须以GET方式拼接在URL中)

secret

String


调用密钥 (复制:Taobaoapi2014 )

api_name

String


API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]

cache

String


[yes,no]默认yes,将调用缓存的数据,速度比较快

result_type

String


[json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读

lang

String


[cn,en,ru]翻译语言,默认cn简体中文

version

String


API版本 (查看接口调用示例)

2.4.请求代码示例,支持高并发请求(CURL、PHP 、PHPsdk 、Java 、C# 、Python...)

# coding:utf-8
"""
Compatible for python2.x and python3.x
requirement: pip install requests
"""
from __future__ import print_function
import requests
# 请求示例 url 默认请求参数已经做URL编码
url = "https://api-gw.Taobaoapi2014.cn/taobao/item_search_shop/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&shop_id=433655136&page=1&sort="
headers = {
    "Accept-Encoding": "gzip",
    "Connection": "close"
}
if __name__ == "__main__":
    r = requests.get(url, headers=headers)
    json_obj = r.json()
    print(json_obj)

2.5响应参数

Python爬取天猫店铺列表页的所有数据封装接口教程_数据采集_04

这是最后爬取的效果:

Python爬取天猫店铺列表页的所有数据封装接口教程_数据挖掘_05

举报

相关推荐

0 条评论