采集内容: 

  本项目选择 淘宝商品类目:连衣裙

       数量:一共 100 页,4400 个连衣裙商品

       筛选条件:淘宝天猫、销量从高到低、价格 0 元到 200 元以内。

 项目目的:

1.商品列表数据采集分析

2.商品销量数据采集分析

3.区间段数据分析

项目步骤:

  1. 数据采集模块:利用 Python爬虫爬取淘宝网商品数据
  2. 数据预处理模块:对商品数据进行清洗和处理

一、爬取数据

  因为淘宝网是有反爬虫机制的,虽然我使用了多线程、修改 headers 参数,以及使用代理 ip 等,也考虑到我当前测试环境是使用校园网进行爬取淘宝商品信息的,学校只有一个公网 ip,按照以往的经验,使用校园网做测试环境的话是不容易被封的,但仍然不能保证每次 100% 爬取,所以我增加了循环爬取,每次循环爬取未爬取成功的页面,直至所有的页面全部爬取成功。

  淘宝商品页面上存储的商品数据是以 Json 格式存储的,在这里我选择用正则表达式进行解析,代码如下:

1.请求方式:HTTP  GET  POST

2.公共参数:

名称 类型 必须 描述
key String 调用key(必须以GET方式拼接在URL中,查看调用示例
secret String 调用密钥 (复制v: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版本

 3.请求参数:

请求参数:q=连衣裙&start_price=0&end_price=0&page=1&cat=0&discount_only=&sort=&page_size=&seller_info=&nick=&ppath=&imgid=&filter=

参数说明:q:搜索关键字
cat:分类ID
start_price:开始价格
end_price:结束价格
sort:排序[bid,_bid,bid2,_bid2,_sale,_credit]
  (bid:总价,bid2:商品价格,sale:销量,credit信用,加_前缀为从大到小排序)
page:页数

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-vixing.taobaoapi2014.cn/taobao/item_search/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&q=女装&start_price=0&end_price=0&page=1&cat=0&discount_only=&sort=&page_size=&seller_info=&nick=&ppath=&imgid=&filter="
headers = {
    "Accept-Encoding": "gzip",
    "Connection": "close"
}
if __name__ == "__main__":
    r = requests.get(url, headers=headers)
    json_obj = r.json()
    print(json_obj)

5.爬取到商品数据我是先以 Excel 文件的 xls 格式保存存储到本地上,方便调试,以下图 是已经爬取到的数据。

Logo

电商企业物流数字化转型必备!快递鸟 API 接口,72 小时快速完成物流系统集成。全流程实战1V1指导,营造开放的API技术生态圈。

更多推荐