某东抢购某台脚本-低调

某东抢购某台脚本

小白操作-学习使用
注意:
在这里插入图片描述

本文部分变量已做脱敏处理,仅用于测试和学习研究,禁止用于商业用途,不能保证其合法性,准确性,完整性和有效性,请根据情况自行判断。技术层面需要提供帮助,可以通过打赏的方式进行探讨。

这个脚本是用来抢购京东商品的Python脚本,其中包含了许多自动化操作来模拟用户行为。下面是脚本的主要部分及其功能的详细解释:

  1. 初始化和导入库:
  • 导入必要的库,如concurrent, datetime, requests, jpype等,用于网络请求、日期处理和Java代码交互。

  • 使用urllib3禁用了HTTPS警告,这是常见的在发起HTTPS请求时避免不必要警告的做法。

  1. 全局变量设置:
  • 设置cookie字符串、预定时间、商品ID、以及一些URL和header参数。
  1. Session对象:
  • 创建了一个requests的Session对象用于维持一系列请求的持久连接。
  1. 商品预约(make_reserve):
  • 发起POST请求预约商品,使用了封装的加密算法生成请求签名,并处理返回的预约结果。
  1. 提交订单(sub_order):
  • 通过不断检查和提交订单尝试抢购商品。使用了一个循环来持续尝试直到成功或达到尝试次数限制。
  1. 抢购主函数(kill_mt):
  • 包含了获取token、处理登录跳转、验证登录信息,最后根据响应跳转到抢购页面。

  • 如果抢购时间到了,会调用sub_order()函数来提交订单。

  1. 辅助功能:
  • parse_json函数用于解析JSON格式的字符串。

  • die()函数用于在发生错误时退出脚本。

  • getToken()用于从服务器获取必要的token以继续进行抢购。

  1. JPype的使用:
  • 使用JPype来启动Java虚拟机,允许Python脚本运行Java代码。这通常用于调用一些复杂的加密函数,这些加密函数是用Java实现的,可能涉及到登录和提交订单的过程。
  1. 入口点:
  • 脚本的执行从这里开始,首先设置JPype的环境,然后进行商品预约,获取token,并尝试抢购。

这个脚本的目的是自动化地参与京东的商品抢购活动,通过模拟用户的登录和下单过程来尽可能地提高成功率。请注意,使用这类脚本可能违反京东的使用条款,并可能导致账号被封禁。在使用之前,请确保了解相关的法律和政策限制。
部分代码


sub_order_time = '2024-05-01 18:07:59.500'
skuId = 124234234234234232343# 创建一个Session对象
session = requests.session()jump_url = 'https://un.m.jd.com/cgi-bin/app/appjmp'
token_body = '{"action":"to","to":"https://divide.jd.com/user_routing?skuId=%s"}' % skuId
token_function_id = ''
client = ''
clientVersion = ''
uuid = ''
def die():sys.exit(1)def getToken():logger.info('开始获取 token')JDClass = jpype.JClass("com.jdsdk.jd_main")jd = JDClass()sing = jd.runJni([token_function_id, token_body, uuid, client, clientVersion])sign = str(sing)data_array = sign.split('&')data_dict = {}# 遍历分割后的数组for item in data_array:key, value = item.split('=')data_dict[key] = valuetoken_payload['st'] = data_dict['st']token_payload['sign'] = data_dict['sign']token_payload['sv'] = 111url = 'https://api.m.jd.com/client.action'token_resp = requests.post(url, params=token_payload)if token_resp.status_code != 200:print("请求出错!!!")json = parse_json(token_resp.text)if json.get('echo'):print("错误信息")print(json['echo'])die()params['tokenKey'] = json['tokenKey']logger.info('获取 token完毕')logger.info('获取到token:' + json['tokenKey'])if __name__ == "__main__":# 添加Jar包到类路径jvmPath = jpype.getDefaultJVMPath()d = './out/artifacts/xxx_jar/xxx.jar'  # 对应jar地址jpype.startJVM(jvmPath, "-ea", "-Djava.class.path=" + d + "")make_reserve()getToken()kill_mt()```

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

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

相关文章

Git -- reset 详解

引言 当我们在项目中有多个人协同开发时候,难免会出现一些错误的提交或者删除了一些重要文件。我们需要回滚到指定的某一个节点。那些乱七八糟的各种提交都要清除掉。 这时候,我们的指令就要用到了。reset 正文 git reset。它的一句话概括 git-reset …

2023年乡镇街道边界数据、行政村边界、省市县区划边界、建筑轮廓边界数据、流域边界数据、降雨量分布、气温分布、道路网分布

数据范围:全国行政区划-行政乡镇街道边界 数据类型:面状数据,全国各省市县【乡镇-边界】乡村界、乡村范围 数据属性:标准12位行政区划编码、乡镇名称、所属地区 分辨率:1:2万--1:5万 数据格式:SHP数据&…

XYCTF2024 RE ez unity 复现

dll依然有加壳 但是这次global-metadata.dat也加密了,原工具没办法用了,不过依然是可以修复的 a. 法一:frida-il2cpp-bridge 可以用frida-il2cpp-bridge GitHub - vfsfitvnm/frida-il2cpp-bridge: A Frida module to dump, trace or hijac…

Spring Security + JWT 实现登录认证和权限控制

Spring Security JWT 实现登录认证和权限控制 准备步骤 准备好一些常用的工具类,比如jwtUtil,redisUtil等。引入数据库,mybatis等,配置好controller,service,mapper,保证能够正常的数据请求。…

自定义SpringBoot的starter

案例需求:自定义redis-stater。要求当导入redis坐标时,SpringBoot自动创建Jedis的Bean。 实现步骤: 1、创建redis-spring-boot-autoconfigure模块 2、创建redis-spring-boot-starter模块,依赖redis-spring-boot-autoconfigure的…

【Osek网络管理测试】[TG3_TC6]等待总线睡眠状态_2

🙋‍♂️ 【Osek网络管理测试】系列💁‍♂️点击跳转 文章目录 1.环境搭建2.测试目的3.测试步骤4.预期结果5.测试结果 1.环境搭建 硬件:VN1630 软件:CANoe 2.测试目的 验证DUT在满足进入等待睡眠状态的条件时是否进入该状态 …

PyTorch机器学习实现液态神经网络

大家好,人工智能的发展催生了神经网络这一强大的预测工具,这些网络通过数据和参数优化生成预测,每个神经元像逻辑回归门一样工作。结合反向传播技术,模型能够根据损失函数来调整参数权重,实现自我优化。 然而&#xf…

Qt 6 开源版(免费) -- 在线安装图解

经常遇到询问:有没有Qt6安装包? ......,真没有呢~~ 从Qt6起,它整了两个重大改变(并非指技术): 在线安装,不再提供单独的安装包主推收费的商业版 当然的,为了培养市场…

使用nvm切换nodejs版本

查看可以安装的版本: 使用nvm list显示已安装的nodejs版本: 选择一个版本下载: 切换对应的版本:

第一天学习(GPT)

1.图片和语义是如何映射的? **Dalle2:**首先会对图片和语义进行预训练,将二者向量存储起来,然后将语义的vector向量转成图片的向量,然后基于这个图片往回反向映射(Diffusion)——>根据这段描…

SpringBoot+Vue+Element-UI实现学生综合成绩测评系统

前言介绍 学生成绩是高校人才培养计划的重要组成部分,是实现人才培养目标、培养学生科研能力与创新思维、检验学生综合素质与实践能力的重要手段与综合性实践教学环节。而学生所在学院多采用半手工管理学生成绩的方式,所以有必要开发学生综合成绩测评系…

323_C++_QT_QProcess执行cmd解压、压缩、删除tar.gz等等其他压缩包文件到指定目录,不需要外部库,QT自带API的就行

// decompressPath : 解压到此目录 // fileName : 解压的tar.gz文件名executeCommand(decompressPath , QString::fromStdString(fileName));// 开始解压 void executeCommand