python采集电商jd app商品详情数据(2023-10-30)

一、技术要点:
  1、cookie可以从手机app端用charles抓包获取;
  2、无需安装nodejs,纯python源码;
  3、商品详情接口为:functionId ="wareBusiness";
  4、clientVersion = "10.1.4"同时也支持更高的版本;
  5、sign签名算法已转成python源码;

# -*- coding: UTF-8 -*-
import requests,json
import pkgutil
import time
from urllib.parse import urlparse, parse_qs, urlunparse
import hashlib
import execjs
from urllib.parse import quote
import io
import sys
from coreMethod import servicedef savetofile(text,filename):file = open(filename, "w",encoding='utf-8' )file.write(text)file.close()def print_hi(name):# Use a breakpoint in the code line below to debug your script.print(f'Hi, {name}')  # Press Ctrl+F8 to toggle the breakpoint.def jdsku(skuId,source_value):body={"abTest800":True,"avoidLive":False,"brand":"Xiaomi","cityId":2258,"cpsNoTuan":None,"darkModelEnum":3,"districtId":2259,"eventId":"Searchlist_Productid","fromType":0,"isDesCbc":False,"latitude":"24.343321","lego":True,"longitude":"102.548038","model":"MI+4LTE","ocrFlag":False,"pluginVersion":101040,"plusClickCount":0,"plusLandedFatigue":0,"provinceId":"25","skuId":skuId,"source_type":"search","source_value":source_value,"townId":57314,"uAddrId":"0","utmMedium":None}data_json = json.dumps(body, ensure_ascii=False, separators=(",", ":"))data="body="+quote(data_json)+"&"data_len=len(data)print(data_len)functionId ="wareBusiness"uuid="d5aada6c69ce7237"     # uuid = "ZNVrYWHrDwC2EWDvDzSzDm=="clientVersion = "10.1.4"api_url="https://api.m.jd.com/client.action?functionId=wareBusiness&clientVersion=10.1.4&build=90060&client=android&d_brand=Xiaomi&d_model=MI4LTE&osVersion=6.0.1&screen=1920*1080&partner=ks006&oaid=&eid=eidA0c138122bas4uo1qCosmRnqrZBkTZ+zEF7qNa5UCxrzSE5IyVBHJw4jzuBKyNz0TPXE0oY0j0H/viRPJy5RUE1KWCJuMWV52ufEtPyZiLpXsetVD&sdkVersion=23&lang=zh_CN&eu=8363533373230323933313336333&fv=93D2634303938303363663032626&uuid=d5aada6c69ce7237&aid=d5aada6c69ce7237&area=25_2258_2259_57314&networkType=wifi&wifiBssid=d9077de60f51d1d1d6f228a96f318e0c&uts=0f31TVRjBSsqndu4%2FjgUPz6uymy50MQJ57QGqe4EVdPCC%2F%2BLaIc%2B0FPy%2BbUQbRC5NoDqqw5SzXn%2B5IzKEzRV7U4tEboVX3RmAjshdIn%2BrmSbjWta516veiyWgiDkt89AHGr9Rp0fcz01k8UAHnDKv9FJVcx9o%2BHKLIDKAa6QQUSBNqX7wvJlkldVcZElJ1qX8Gf%2F4RKU8CYMjipFaink5w%3D%3D&uemps=0-0&harmonyOs=0&scval=10053586372378";sign=service.get_st_sign_sv(data_json, functionId, uuid, clientVersion)# print('技术支持:复制:byc6352')api_url=api_url+'&'+signreal_url = api_url.replace("https://api.m.jd.com", "")print(real_url)# print(data_json)# data_url=quote(data_json)# print(data_url)headers={"method":"POST","path": real_url,"scheme": "https","charset": "UTF-8","jdc-backup": 'pin=jd_eiFeOmfKYTrp;wskey=AAJk-9PXAEDx4VigFTYENYvbbF_ih0fwKNPxtlGjLBxeKZDIHTo0dlOGi9kthRmaIPxAQc8LOjXjivrJlZRmTDk92_7gn7xD;whwswswws=AAo0qnXeKECW5dHtHD2SyG-aA65Td2U3WT7WUwAAAAAA;unionwsws={"devicefinger":"eidA0c138122bas4uo1qCosmRnqrZBkTZ+zEF7qNa5UCxrzSE5IyVBHJw4jzuBKyNz0TPXE0oY0j0H\/viRPJy5RUE1KWCJuMWV52ufEtPyZiLpXsetVD","jmafinger":"AAo0qnXeKECW5dHtHD2SyG-aA65Td2U3WT7WUwAAAAAA"};',"Authority": "api.m.jd.com","Accept": "*/*",# "Accept-Encoding": "br,gzip,deflate","Accept-Language": "zh-CN,zh;q=0.9","Cookie": 'pin=jd_LStcEbIzGjuR;wskey=AAJkcwjDAECOW8kziBHNbB1cl-BdbgXIW1TU1mHHu7XkyHRHGTt36GiksxgJbLVNZ4Ni-XKKKXahMVmrVoH6IagBm2_RD_-n;whwswswws=JD012145b9Ooh6gW1WYH168526050472603eFWOcdKH3-r3FyvX7W1dFwIKf7xAscQeSZ4_zhAV07wcda_pYWPbGQW_fnTydijhfpLKLUlVzIXVOor8dB-N7vkfs3rWJTxi0p1xghd~lnPHS6M-VPm1DZUIGaKbW62XTKAcWHCstLD9GZCUslR9H9xVy8TeBaMkOHcMNNOZ-86d4vztzqMQD2jeEoOoHmHbOUCNqSQL3MKF19Ct66wbQf3UlOZ7A9SdiTCPFifNr5Fwf7rWgoO2rnN4XQXFJ-YkcJvtdXPQ11I6r3V44VJc;unionwsws={"devicefinger":"eidAe50181223cs8uIOuW0dWRka9iu\/jXMDOK7iDr+Oor0tc4JwaCNymIsN1KVlEBsjUDXYycNGHW5iEV8gds4\/u1TN0isUUwp8eUG+Fk\/pxSMrh\/flR","jmafinger":"JD012145b9Ooh6gW1WYH168526050472603eFWOcdKH3-r3FyvX7W1dFwIKf7xAscQeSZ4_zhAV07wcda_pYWPbGQW_fnTydijhfpLKLUlVzIXVOor8dB-N7vkfs3rWJTxi0p1xghd~lnPHS6M-VPm1DZUIGaKbW62XTKAcWHCstLD9GZCUslR9H9xVy8TeBaMkOHcMNNOZ-86d4vztzqMQD2jeEoOoHmHbOUCNqSQL3MKF19Ct66wbQf3UlOZ7A9SdiTCPFifNr5Fwf7rWgoO2rnN4XQXFJ-YkcJvtdXPQ11I6r3V44VJc"};',"cache-control": "no-cache","content-type": "application/x-www-form-urlencoded; charset=UTF-8","content-length": str(data_len),"user-agent": "okhttp/3.12.1;jdmall;android;version/10.1.4;build/90060;screen/1080x1920;os/6.0.1;network/wifi;",}# body.encode(encoding='utf-8')res=requests.post(url=api_url, headers=headers,data=data)print(res)text=res.textsavetofile(text,"data.txt")print(text)return text# Press the green button in the gutter to run the script.
if __name__ == '__main__':print_hi('jd app商品详情。技术支持:v~+:byc6352;QQ:39848872')skuId = "10053586372378"    # skuId 为商品IDsource_value="小学生书包"      # source_value为搜索接口的关键词jdsku(skuId,source_value)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/124873.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java阵道之适配器大阵

开个玩笑,这里是一篇适配器模式讲解 定义: 适配器模式将某个类的接口转换成客户端期望的另一个接口表示,目的是消除由于接口不匹配所造成的类的兼容性问题。 主要分为三类:类的适配器模式、对象的适配器模式、接口的适配器模式。…

【原创】java+swing+mysql志愿者管理系统设计与实现

摘要: 志愿者管理系统是一个用于管理志愿者以及活动报名的系统,提高志愿者管理的效率,同时为志愿者提供更好的服务和体验。本文主要介绍如何使用javaswingmysql去实现一个志愿者管理系统。 功能分析: 系统主要提供给管理员和志…

洞察运营机会的数据分析利器

这套分析方法包括5个分析工具: 用“描述性统计”来快速了解数据的整体特点。用“变化分析”来寻找数据的问题和突破口。用“指标体系”来深度洞察变化背后的原因。用“相关性分析”来精确判断原因的影响程度。用“趋势预测”来科学预测未来数据的走势,

少儿编程 2023年9月中国电子学会图形化编程等级考试Scratch编程四级真题解析(选择题)

2023年9月scratch编程等级考试四级真题 选择题(共25题,每题2分,共50分) 1、角色为一个紫色圆圈,运行程序后,舞台上的图案是 A、 B、 C、 D、 答案:A

阿里云推出通义千问App,提供全方位的协助

🦉 AI新闻 🚀 阿里云推出通义千问App,提供全方位的协助 摘要:阿里云旗下大模型通义千问App登陆各大安卓应用市场,具有超大规模预训练模型,可在创意文案、办公助理、学习助手、趣味生活等方面协助用户。功…

Redis测试新手入门教程

在测试过程中,我们或多或少会接触到Redis,今天就把在小破站看到的三丰老师课程,把笔记整理了下,用来备忘,也希望能给大家带来亿点点收获。 主要分为两个部分: 一、缓存技术在后端架构中是如何应用的&#…

10.31一些代码分析,香浓展开,移位器(桶形多位),二进制转格雷码

always的block之间,采用并行执行 always之内,采用非阻塞赋值,为顺序执行 一些代码分析 这个把使能信号和W信号组合在一起,进行case语句,即只有合并信号最高位为1时,才进行操作 always后面要写&#xff0…

非科班出身的野生Android也可以跳到大厂

野生Android从业者,非科班出身,在小公司打杂2年后,"意外"地拿到了大厂的offer。 高中毕业后,我选择了一条不太寻常的路,(花大几万)进入编程培训班,后来又自修课程&#xf…

信创强国 | 安全狗荣获信创工委会技术活动单位证书

近日,安全狗荣获中国电子工业标准化技术协会信息技术应用创新工作委员会(以下简称“信创工委会”)颁发的信息技术应用创新工作委员会技术活动单位证书。 作为国内云原生安全领导厂商,安全狗在信息技术应用创新方面有多年的技术积累…

超全整理,Jmeter性能测试-脚本error报错排查/分布式压测(详全)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 性能脚本error报错…

OPENCV 闭运算实验示例代码morphologyEx()函数

void CrelaxMyFriendDlg::OnBnClickedOk() {hdc this->GetDC()->GetSafeHdc();// TODO: 在此添加控件通知处理程序代码string imAddr "c:/Users/actorsun/Pictures/";string imAddr1 imAddr"rice.png";Mat relax, positive;relax imread(imAddr1…

【Redis】高并发分布式结构服务器

文章目录 服务端高并发分布式结构名词基本概念评价指标1.单机架构缺点 2.应用数据分离架构应用服务集群架构读写分离/主从分离架构引入缓存-冷热分离架构分库分表(垂直分库)业务拆分⸺微服务 总结 服务端高并发分布式结构 名词基本概念 应⽤&#xff0…

030.Python面向对象_类补充_只读属性

我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈 入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈 虚 拟 环 境 搭 建 :👉&…

MATLAB中perceptron函数用法

目录 语法 说明 示例 使用感知器求解简单分类问题 perceptron函数的功能是简单的单层二类分类器。 语法 perceptron(hardlimitTF,perceptronLF) 说明 注意 Deep Learning Toolbox™ 支持早期形式的感知器。为了获得更好的结果,您应改用 patternnet&#xff0…

【Linux】-进程控制(深度理解写时拷贝、exit函数、return的含义以及makefile编译多个程序)-进程创建、进程终止、进程等待、进程程序替换

💖作者:小树苗渴望变成参天大树🎈 🎉作者宣言:认真写好每一篇博客💤 🎊作者gitee:gitee✨ 💞作者专栏:C语言,数据结构初阶,Linux,C 动态规划算法🎄 如 果 你 …

【华为】路由器以PPPoE拨号接入广域网

组网需求 用户希望以PPPoE拨号方式接入广域网,如图1所示,Router作为PPPoE客户端,得到PPPoE服务器的认证后获得IP地址,实现用户接入互联网的需求。内网网关地址(即VLANIF1接口的IP地址)为10.137.32.1/24。 …

JVS-BI数字大屏设计器:一站式解决方案

数字大屏介绍 数字大屏是当下数据展示、业务监控、指挥调度常见的业务表达形态,常有可视化的图表、效果装饰、事件操作等技术组成酷炫的效果展示。 配置入口 进入JVS-BI(bi.bctools.cn),进入大屏页面,如下图所示 ①…

想翻译pdf文档,试了几个工具对比:有阿里(完全免费,快,好用,质量高,不用注册登录)道最好(有限免费) 百度(有限免费)和谷歌完全免费(网不好)

文档翻释作为基础设施,工作必备。 阿里 (完全免费,快,好用,质量高,不用注册登录,无广告)我给满分 https://translate.alibaba.com/#core-translation 先选好语言。 Google(完全免…

css position属性与js滚动

“视口”就是浏览器窗口中实际显示文档内容的区域,不包含浏览器的“外框”,如菜单、工具条和标签。文档则是指整个网页。 1 css 的position static 正常定位,是元素position属性的默认值,元素遵循常规流。 relative 相对定位&…

【年终特惠】全流程HEC-RAS 1D/2D水动力与水环境模拟技术案例实践及拓展应用

水动力与水环境模型的数值模拟是实现水资源规划、环境影响分析、防洪规划以及未来气候变化下预测和分析的主要手段。然而,一方面水动力和水环境模型的使用非常复杂,理论繁复;另一方面,免费的水动力和水环境软件往往缺少重要功能&a…