某东抢购某台脚本-低调

某东抢购某台脚本

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

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

这个脚本是用来抢购京东商品的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.mzph.cn/diannao/7189.shtml

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

相关文章

C语言动态内存管理malloc、calloc、realloc、free函数、内存泄漏、动态内存开辟的位置等的介绍

文章目录 前言一、为什么存在动态内存管理二、动态内存函数的介绍1. malloc函数2. 内存泄漏3. 动态内存开辟位置4. free函数5. calloc 函数6. realloc 函数7. realloc 传空指针 总结 前言 C语言动态内存管理malloc、calloc、realloc、free函数、内存泄漏、动态内存开辟的位置等…

JavaScript this 上下文深度探索:综合指南涵盖隐式与显式call、apply、bind、箭头函数、构造函数等用法于多样场景

JavaScript中的this关键字代表函数执行的上下文环境,核心在于确定函数内部访问的当前对象。它根据函数调用方式动态变化,对事件处理、对象方法调用等至关重要。通过.call(), .apply(), .bind()或箭头函数控制this,可确保代码逻辑正确绑定对象…

ROS 2边学边练(43)-- 利用GTest写一个基本测试(C++)

前言 在ROS(Robot Operating System)中,gtest(Google Test)是一个广泛使用的C测试框架,用于编写和执行单元测试。这些测试可以验证ROS节点、服务和消息等的正确性和性能。 如果我们需要在写的包中添加测试&…

[redis] redis为什么快

1. Redis与Memcached的区别 两者都是非关系型内存键值数据库,现在公司一般都是用 Redis 来实现缓存,而且 Redis 自身也越来越强大了!Redis 与 Memcached 主要有以下不同: (1) memcached所有的值均是简单的字符串,red…

保持 Hiti 证卡打印机清洁的重要性和推荐的清洁用品

在证卡印刷业务中,保持印刷设备的清洁至关重要。特别是对于 Hiti 证卡打印机来说,它们是生产高质量证卡的关键工具。保持设备清洁不仅可以保证打印质量和效率,还可以延长其使用寿命。本文将探讨保持 Hiti 证卡打印机清洁卡的重要性&#xff0…

首届云原生编程挑战赛总决赛亚军比赛攻略(ONE PIECE团队)

关联比赛: 首届云原生编程挑战赛【复赛】实现一个 Serverless 计算服务调度系统 比赛攻略—ONE PIECE团队 代码链接: 初赛:GitHub - czy-gm/containerScheduler: 2020天池首届云原生编程挑战赛亚军-初赛赛道二(实现规模化容器静态布局和动…

高项-案例分析万能答案(作业分享)

项目管理:每天进步一点点~ 活到老,学到老 ヾ(◍∇◍)ノ゙ 何时学习都不晚,加油 一、通用问题原因: 1.项目经理管理经验不足,没有及时发现和解决xx方面的问题。 2.项目管理计划没有得到关键干系人的评审确…

yum常用命令与lrzsz的在线安装

yum命令 yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。 基于 RPM 包管理,能够从指定的服务器自动下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装…

php基础知识快速入门

一、PHP基本知识 1、php介绍: php是一种创建动态交互性的强有力的服务器脚本语言,PHP是开源免费的,并且使用广泛。PHP是解释性语言,按顺序从上往下执行,无需编译,直接运行。PHP脚本在服务器上运行。 2、ph…

动态规划(dp)(二)

按摩师 按摩师 1.状态表示 dp【i】表示:到i位置时,此时最长时长 继续细化:在i位置选预约,或不选预约 f【i】:到i位置时,nums【i】必选的,最长时长 g【i】:到i位置时&#xff0c…

仅为娱乐,Python中如何重定义True为False?

在Python中,True 和 False 是内建的布尔常量,分别代表逻辑上的真和假。它们是不可变的,且在Python语言规范中具有特殊地位,不能被用户直接重定义。尝试给 True 或 False 赋予新的值是违反Python语言规则的,这样的操作会…

JS基础:变量的详解

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃,大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端基础路线”,可获取…

零基础入门学习Python第二阶01生成式(推导式),数据结构

Python语言进阶 重要知识点 生成式(推导式)的用法 prices {AAPL: 191.88,GOOG: 1186.96,IBM: 149.24,ORCL: 48.44,ACN: 166.89,FB: 208.09,SYMC: 21.29}# 用股票价格大于100元的股票构造一个新的字典prices2 {key: value for key, value in prices.i…

Java的java.util.concurrent.ExecutorService简介

在Java并发编程的璀璨星空中,ExecutorService无疑是那颗最耀眼的明星。它不仅是Java并发编程的核心组件之一,更是构建高并发、高性能应用的秘密武器。今天,我们就来一场说走就走的探索之旅,揭开它的神秘面纱! &#x1…

深度学习中的不确定性量化:技术、应用和挑战综述(一)

不确定性量化(UQ)在减少优化和决策过程中的不确定性方面起着关键作用,应用于解决各种现实世界的科学和工程应用。贝叶斯近似和集成学习技术是文献中使用最广泛的两种UQ方法。在这方面,研究人员提出了不同的UQ方法,并测试了它们在各种应用中的…

Ansible自动化运维工具单模块介绍

前言 自动化运维是指利用自动化工具和技术来简化、自动化和优化IT基础设施的管理和运维过程,从而提高效率、降低成本,并减少人为错误。在当今复杂的IT环境中,自动化运维已经成为许多组织和企业提高生产力和保证系统稳定性的重要手段。Ansibl…

动态规划算法:路径问题

例题一 解法(动态规划): 算法思路: 1. 状态表⽰: 对于这种「路径类」的问题,我们的状态表⽰⼀般有两种形式: i. 从 [i, j] 位置出发,巴拉巴拉; ii. 从起始位置出…

使用Simcenter全面评估SiC 器件的特性

内容摘要 传统的硅金属-氧化物-半导体场效应晶体管 (MOSFET) 具有成熟的技术和低廉的成本,在中压和绝缘栅双极晶体管 (IGBT) 高压功率电子器件中占主导地位。使用碳化硅等具有高电离能的新型宽带隙材料,可以制造出具有快速开关时间和超过1,000伏击穿电压…

博客网站SpringBoot+Vue项目练习

博客网站SpringBootVue简单案例 前言 学了vue后一直没用找到应用的机会,在Github上找到了一个看起来比较友好的项目(其实具体代码我还没看过)。而且这个项目作者的readme文档写的也算是比较好的了。 项目链接:https://github.c…

【LeetCode刷题】739. 每日温度(单调栈)

1. 题目链接2. 题目描述3. 解题方法4. 代码 1. 题目链接 739. 每日温度 2. 题目描述 3. 解题方法 用一个栈st保存每个数的下标,同时创建一个数组res保存结果,初始值都为0。循环遍历题目中的数组temperature。如果temperature[i] > st.top()&#x…