淘宝模拟登录 +淘宝商品详情数据、淘宝商品列表数据爬取

PYTHON环境: 

* requests库

* time库

* re库

实现思路:

* 检查此账号需不需要验证(滑动验证/验证码)

* 浏览器/工具 获取ua和加密后的密码(一劳永逸的方法)

* post请求登录url获取st申请url

* 根据获得的st申请地址获取st码

* 用st码登录,提取重定向网址,存储 cookie

* 用cookie向其它页面发送请求,获取信息

函数说明:

* check_login() #检查账号是否需要滑块验证

* login_get_st() #登录验证获取st申请地址

* get_st() #获取st码

* st_login() #使用st登录淘宝

* test() #商品爬取测试

* test2() #个人页面测试

文件结构:

* demo文件夹存放代码文件

* data文件夹存放爬取的数据

未来完善升级想法:

* 将验证账号和登录方法封装在一起

* 采用IP代理更好的的获取信息

* cookie序列化减少重复登录(已完成)

* 采用框架实现模拟滑动操作,极大的提高信息的获取效率

* 采用多线程或分布式,将信息获取速度最大化

* 挺粗糙的一个作品哈哈,有空会继续优化的

封装好的接口代码:

1.请求方式: HTTP POST GET

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.代码展示:

# 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-Vxin.taobaoapi2014.cn/taobao/item_get/?key=<您自己的apiKey>&secret=<您自己的apiSecret>&num_iid=652874751412&is_promotion=1"
headers = {
    "Accept-Encoding": "gzip",
    "Connection": "close"
}
if __name__ == "__main__":
    r = requests.get(url, headers=headers)
    json_obj = r.json()
    print(json_obj)

4.响应示例:

猜你喜欢

转载自blog.csdn.net/Andyfu2019/article/details/130205459