京东自动抢购茅台脚本

本文主要介绍如何实现在Android 手机上自动抢购茅台

1、AutoJS

一个支持无障碍服务的 Android 平台上的 JavaScript IDE。Autojs 主要是基于安卓系统的无障碍服务,实现自动化操控和监控手机信息处理。目前已升级至收费版,本文提供免费版(已停止更新)。AutoJS支持UI界面和打包,因此完全可以交自动化脚本封装成一个apk软件。

安装步骤:

(1) 下载以上链接中的AutoJS和打包插件到手机本地并安装;

(2) AutoJS支持在手机上直接写脚本,但是这里还是建议大家在电脑上写好脚本同步到手机上,电脑端的开发环境为VSCode,VSCode下载链接为

(4) 在电脑上打开VSCode,按住Ctrl+Shift+P,输入Auto.js: Start Server

(5) 打开 AutoJS App,点击左上角打开无障碍服务,开启悬浮窗;确保手机和电脑处于同一局域网下,点击连接电脑,输入电脑IP地址,能看到VSCode提示手机已连接

(6) 在VSCode中新建一个文件toast.sj,在文件中输入toastLog(app.versionCode);,按下F5执行,看到手机上出现版本提示说明环境已完全配置成功

2、脚本抢购茅台

(1) 打开京东App,新建一个文件jd_mt.sj,输入以下代码,点击F5运行

// 打开App
function open_app(appName){
    var name = getPackageName(appName);
    if(name){
        toastLog("打开"+appName+"...");
        launch(name);
    }
    else{
        toastLog("App名称错误");
    }
    return name;
}

open_app("京东");

(3) 定时抢购

预约成功的基础上,抢购的程序如下:

// 京东抢购茅台预约
function jd_mt_qg(){
    wait_textview_exists_click("立即抢购", 0, ""立即抢购"");
    wait_button_exists_click("提交订单", 0, ""提交订单"");
}

抢购不太可能一次成功的,我们这里设置每天10点02分预约,12:00:00整时开抢

// 定时预约抢购
function timing_jd_mt(hour_yy, min_yy, sec_yy, hour_qg, min_qg, sec_qg){
    var yy_flag = 0;    //预约成功标志
    toastLog("执行京东抢购任务...");
    while(true){
        var nowDate = new Date();
        if(nowDate.getHours()==hour_yy && nowDate.getMinutes()==min_yy && nowDate.getSeconds()==sec_yy){
            toastLog("定时时间到, 开始预约...");
            jd_mt_yy();
            yy_flag = 1;
        }
        if(nowDate.getHours()>=hour_qg && nowDate.getMinutes()>=min_qg && nowDate.getSeconds()>=sec_qg &&yy_flag){
            toastLog("定时时间到, 开始抢购...");
            jd_mt_qg();
        }
    }
}

timing_jd_mt(10, 02, 00, 12, 00, 00);

3、总结

经验分享 程序员 微信小程序 职场和发展