某东抢购某台脚本——高版本

2024-05-08 02:12

本文主要是介绍某东抢购某台脚本——高版本,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

某东抢购某台脚本——高调

小白操作-学习参考
在这里插入图片描述

说明

这个脚本用于自动化京东的秒杀过程,特别是对于高需求商品如茅台。它展示了通过自动化工具模拟用户行为的能力,但同时也涉及到了使用自动化脚本可能违反网站使用条款的问题。使用此类脚本前应确保合规,了解可能的风险。

这段脚本是为了自动化京东的秒杀活动而编写的。它涵盖了预约、获取令牌、跳转、以及最终的提交订单等多个步骤。以下是脚本各部分的详细解析:

函数和类解释

  1. getUrlParams(url):
  • 解析URL中的查询参数并返回字典格式。
  1. get_cookie_string(cookie):
  • 将cookie字典转换为字符串格式,以便在HTTP请求中使用。
  1. get_jd_time():
  • 请求京东服务器时间,主要用于同步操作时间。
  1. get_sk(data):
  • 通过特定的加密和处理逻辑生成sk值,此值可能用于提交订单时验证。

脚本流程

  1. 实例化JDSecKillAPI类。

  2. 调用reserve_maotai()函数进行预约。

  3. 获取令牌。

  4. 通过令牌获取跳转链接。

  5. 处理跳转,获取和处理验证码。

  6. 初始化订单操作。

  7. 获取sk值。

  8. 提交订单。

额外的注意点

  • 使用了外部模块JniSign进行签名,这是一种保护措施以符合京东的API安全要求。

  • 脚本涉及多次跳转和请求,反映了京东防刷措施的复杂性。

  • 脚本运行依赖于正确的cookie和其他验证信息,这些信息需要事先获取。
    脱敏处理部分代码

import requests
import re
import datetime
from urllib import parse
import JniSign
import timedef getUrlParams(url):res = dict(parse.parse_qsl(url))return resdef get_cookie_string(cookie):cookie_string = ''for cookie_key in cookie.keys():cookie_string += '%s=%s;' % (cookie_key, cookie[cookie_key])return cookie_stringdef get_jd_time():response = requests.get(url='https://api.m.jd.com/client.action?functionId=queryMaterialProducts&client=wh5')print(response.json())def get_sk(data):data_val = [val for val in data['data'].values()]n, o, p, q, r, s = data_val[0], data_val[1], data_val[2], data_val[3], data_val[4], data_val[5]sk_val = ''if n == 'cca':sk_val = p[14:19].lower() + o[5:15].upper()if n == 'ab':  # check oksk_val = r[10:18] + s[2:13].lower()if n == 'ch':sk_val = q.upper() + r[6:10].upper()if n == 'cbc':  # check oksk_val = q[3:13].upper() + p[10:19].lower()if n == 'by':sk_val = o[5:8] + re.sub('a', 'c', p, flags=re.IGNORECASE)if n == 'xa':sk_val = o[1:16] + s[4:10]if n == 'cza':sk_val = q[6:19].lower() + s[5:11]if n == 'cb':sk_val = s[5:14] + p[2:13].upper()return sk_valif __name__ == '__main__':login_cookie_186 = {'pin': '','wskey': '','whwswswws': '','unionwsws': ''}JDska = JDSecKillAPI(login_cookie=login_cookie_186)print(JDska.reserve_maotai())token_params = JDska.get_token_key()divide_url = JDska.get_appjmp(token_params=token_params)captcha_url = JDska.get_divide(divide_url=divide_url)seckill_url = JDska.get_captcha(captcha_url=captcha_url)JDska.get_seckill(seckill_url=seckill_url)order_data = JDska.init_action()sk_val = JDska.get_tak()print('python计算sk参数:%s' % sk_val)JDska.submit_order(order_data=order_data, sk=sk_val)

注意:

本文部分变量已做脱敏处理,仅用于测试和学习研究,禁止用于商业用途,

这篇关于某东抢购某台脚本——高版本的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/969017

相关文章

Linux使用nohup命令在后台运行脚本

《Linux使用nohup命令在后台运行脚本》在Linux或类Unix系统中,后台运行脚本是一项非常实用的技能,尤其适用于需要长时间运行的任务或服务,本文我们来看看如何使用nohup命令在后台... 目录nohup 命令简介基本用法输出重定向& 符号的作用后台进程的特点注意事项实际应用场景长时间运行的任务服

你的华为手机升级了吗? 鸿蒙NEXT多连推5.0.123版本变化颇多

《你的华为手机升级了吗?鸿蒙NEXT多连推5.0.123版本变化颇多》现在的手机系统更新可不仅仅是修修补补那么简单了,华为手机的鸿蒙系统最近可是动作频频,给用户们带来了不少惊喜... 为了让用户的使用体验变得很好,华为手机不仅发布了一系列给力的新机,还在操作系统方面进行了疯狂的发力。尤其是近期,不仅鸿蒙O

什么是 Ubuntu LTS?Ubuntu LTS和普通版本区别对比

《什么是UbuntuLTS?UbuntuLTS和普通版本区别对比》UbuntuLTS是Ubuntu操作系统的一个特殊版本,旨在提供更长时间的支持和稳定性,与常规的Ubuntu版本相比,LTS版... 如果你正打算安装 Ubuntu 系统,可能会被「LTS 版本」和「普通版本」给搞得一头雾水吧?尤其是对于刚入

windows端python版本管理工具pyenv-win安装使用

《windows端python版本管理工具pyenv-win安装使用》:本文主要介绍如何通过git方式下载和配置pyenv-win,包括下载、克隆仓库、配置环境变量等步骤,同时还详细介绍了如何使用... 目录pyenv-win 下载配置环境变量使用 pyenv-win 管理 python 版本一、安装 和

如何使用 Bash 脚本中的time命令来统计命令执行时间(中英双语)

《如何使用Bash脚本中的time命令来统计命令执行时间(中英双语)》本文介绍了如何在Bash脚本中使用`time`命令来测量命令执行时间,包括`real`、`user`和`sys`三个时间指标,... 使用 Bash 脚本中的 time 命令来统计命令执行时间在日常的开发和运维过程中,性能监控和优化是不

bat脚本启动git bash窗口,并执行命令方式

《bat脚本启动gitbash窗口,并执行命令方式》本文介绍了如何在Windows服务器上使用cmd启动jar包时出现乱码的问题,并提供了解决方法——使用GitBash窗口启动并设置编码,通过编写s... 目录一、简介二、使用说明2.1 start.BAT脚本2.2 参数说明2.3 效果总结一、简介某些情

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Linux服务器Java启动脚本

Linux服务器Java启动脚本 1、初版2、优化版本3、常用脚本仓库 本文章介绍了如何在Linux服务器上执行Java并启动jar包, 通常我们会使用nohup直接启动,但是还是需要手动停止然后再次启动, 那如何更优雅的在服务器上启动jar包呢,让我们一起探讨一下吧。 1、初版 第一个版本是常用的做法,直接使用nohup后台启动jar包, 并将日志输出到当前文件夹n

centos6一键安装vsftpd脚本

centos6一键安装vsftpd脚本 手动安装vsftpd参考教程:Centos下安装Vsftpd的图文教程 vsftpd脚本功能: 1.安装 (命令执行:sh xxx.sh)2.添加ftp用户 (命令执行:sh xxx.sh add)3.卸载vsftpd (命令执行:sh xxx.sh uninstall) 测试环境:centos6 x64 centos6 x86(测试centos7以

Android逆向(反调,脱壳,过ssl证书脚本)

文章目录 总结 基础Android基础工具 定位关键代码页面activity定位数据包参数定位堆栈追踪 编写反调脱壳好用的脚本过ssl证书校验抓包反调的脚本打印堆栈bilibili反调的脚本 总结 暑假做了两个月的Android逆向,记录一下自己学到的东西。对于app渗透有了一些思路。 这两个月主要做的是代码分析,对于分析完后的持久化等没有学习。主要是如何反编译源码,如何找到