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

news/2024/7/19 9:26:10 标签: 爬虫, 数据分析, 数据挖掘, 大数据, 爬山算法

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.公共参数:

名称类型必须描述
keyString调用key(必须以GET方式拼接在URL中)
secretString调用密钥 (复制v:Taobaoapi2014 )
api_nameStringAPI接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]
cacheString[yes,no]默认yes,将调用缓存的数据,速度比较快
result_typeString[json,jsonu,xml,serialize,var_export]返回数据格式,默认为json,jsonu输出的内容中文可以直接阅读
langString[cn,en,ru]翻译语言,默认cn简体中文
versionStringAPI版本

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.响应示例:


http://www.niftyadmin.cn/n/233061.html

相关文章

Point-to Analysis指针分析(1)

Point-to Analysis指针分析&#xff08;1&#xff09;_音程的博客-CSDN博客 前言 指针分析是一个非常复杂的工作&#xff0c;这些工作很多方向&#xff0c;比如是否是上下文敏感分析或上下文不敏感分析&#xff0c;显然&#xff0c;这难易度是不一样地。比如下图。对于同一段…

Avue dynamic表单实现form单选,修改及新增项

Avue dynamic表单实现form单选&#xff0c;修改及新增项 AvueDialogFormTableViewOption.js /** Description:银行账号* Version: 1.0* Autor: Tj* Date: 2023-03-21 11:02:42*/ export const BankAccountOption (vueObj, formData) > {return {labelWidth: 100, //整体列…

rhce第二次作业

配置ssh免密登陆&#xff0c;能够通过客户端主机通过redhat用户和服务端主机基于公钥验证方式进行远程连接 [root456 ~]# hostname host [root456 ~]# bash \\更改名称[roothost ~]# su redhat …

【Vue】学习笔记-列表渲染/数据监视

列表渲染/数据监视基本列表Key的作用与原理列表过滤列表排序Vue 数据监视原理基本列表 v-for指令 用于展示列表数据语法&#xff1a;v-for“(item,index) in xxx” :key“yyy”可遍历&#xff1a;数组&#xff0c;对象&#xff0c;字符串&#xff08;用的很少&#xff09;&am…

【从零开始学Skynet】实战篇《球球大作战》(十三):场景代码设计(下)

1、主循环 《球球大作战》是一款服务端运算的游戏&#xff0c;一般会使用主循环程序结构&#xff0c;让服务端处理战斗逻辑。如下图所示&#xff0c;图中的balls和foods代表服务端的状态&#xff0c;在循环中执行“食物生成”“位置更新”和“碰撞检 测”等功能&#xff0c;从而…

庄懂的TA笔记(十三)<特效-混合模式:四种主要透明通道用法 AC,AB,AD,自定义混合>

庄懂的TA笔记&#xff08;十三&#xff09;&#xff1c;特效-混合模式&#xff1a;四种主要透明通道用法 AC,AB,AD,自定义混合&#xff1e; 效果展示&#xff1a; 正文&#xff1a; 一、特效类大纲&#xff1a; 1、特效 透 2、特效 动 3、特效 映 二、特效&#xff1a;AC:透…

C/C++|物联网开发入门+项目实战|嵌入式C语言高级|C语言常用关键字及运算符操作-学习笔记(8)

文章目录2-2: C语言常用关键字及运算符操作关键字参考&#xff1a; 麦子学院-嵌入式C语言高级2-2: C语言常用关键字及运算符操作 [重点] 掌握C语言的常用关键宇及其应用场景&#xff0c;使用技巧 关键字 编译器&#xff1a;预先定义了一定意义的字符串&#xff0c;32个。 s…

远程组态管理的好处

远程组态管理可以简化管理工作&#xff0c;帮助您节省时间和金钱。远程组态管理可以通过各种应用程序来实现&#xff0c;包括&#xff1a; •监控所有设备的状态&#xff0c;以确保它们正常工作。 •记录现场数据&#xff0c;例如温度&#xff0c;压力或流量。 •快速、轻松地…