本帖最后由 jbczzz 于 2023-6-2 16:45 编辑 windows 10 一加真机,Android11 x麦apk 版本8.5.4 adb 33.0.0 autoxjs scrcpy(可以把真机上的画面投射到电脑上,并且在电脑上操作手机) VScode(安装autoxjs的插件可以方便通过电脑在手机上进行测试和开发,可用可不用)
0x00 前情提要
之前看到有大佬发了某麦网的apk加密接口分析那篇帖子,魔域手游怎么赚魔石其中提到了用自动化工具开发出来的效果不太好,但是感觉自动化的不应该这么慢,于是尝试用autoxjs实现一个基于自动化的抢票工具,之前还用这个做过一个定时打卡的脚本,有需要的话我也可以分享一下。
0x01 环境
0x02 环境搭建
autoxjs环境搭建
原本的autojs作者已经不再维护了,autoxjs是民间维护版本,目前选择autoxjs。安装autox.js的apk,打开app

autojs.png (220.78 KB, 下载次数: 6)
下载附件
2023-6-2 15:00 上传

autoxjs2.png (235.09 KB, 下载次数: 6)
下载附件
2023-6-2 15:00 上传

企业微信截图_16856883503960.png (38.05 KB, 下载次数: 6)
下载附件
2023-6-2 15:00 上传

企业微信截图_16856888732253.png (27.08 KB, 下载次数: 3)
下载附件
2023-6-2 15:00 上传

企业微信截图_16856890302182.png (31.24 KB, 下载次数: 4)
下载附件
2023-6-2 15:00 上传

image.png (17.85 KB, 下载次数: 4)
下载附件
2023-6-2 15:12 上传

企业微信截图_16856900776837.png (158.35 KB, 下载次数: 4)
下载附件
2023-6-2 15:14 上传

企业微信截图_16856903546654.png (58.13 KB, 下载次数: 5)
下载附件
2023-6-2 15:19 上传
[JavaScript] 纯文本查看 复制代码
function damai() { //五月天测试 var date = ["05-31", "06-01", "06-03"]; var prices = ["1555", "355", "1855", "555", "855", "1655"]; var viewer = ["111","zzz"]; var flag = true; console.log("开始执行"); while (!id("tv_price_name").className("android.widget.TextView").textContains("票档").exists()) { click("立即"); } console.log(1); while (true) { for (var j = 0; j < date.length; j++) { //场次缺票判断 if (textContains(date[j]).findOne(0).parent().child(1).child(0) != null && textContains(date[j]).findOne(0).parent().child(1).child(0).text() == "无票") continue; //选择场次 clickMessage(date[j]); //选择未缺货价格 for (var i = 0; i < prices.length; i++) { var price = textContains(prices[i]).findOne(0); if (price.parent().child(1).child(0) != null) { console.log(price.text() + " " + "缺货登记"); continue; } clickMessage(price.text()); var plus = textContains("1张").findOne(0).parent().child(2); for (var i = 0; i < viewer.length - 1; i++) { plus.click(); } if (!click("确定")) { console.log("fake"); var clickButton = textContains("确定").findOne(0).parent(); clickButton.click(); } console.log(price.text()); break; } for (var k = 0; k < viewer.length; k++) { console.log(viewer[k]); console.log(k); if(textContains(viewer[k]).exists()) textContains(viewer[k]).findOne(0).parent().child(3).click(); } clickMessage("提交订单"); clickMessage("我知道了") if(id("damai_theme_dialog_confirm_btn").className("android.widget.TextView").text("我知道了").exists()) { click("我知道了"); } } } }[JavaScript] 纯文本查看 复制代码
//根据控件文字点击 function clickMessage(message) { if (!click(message)) { console.error("点击" + message + "出错"); } }
企业微信截图_1685694667633.png (22.43 KB, 下载次数: 5)
下载附件
2023-6-2 16:45 上传
企业微信截图_16856898803767.png
(146.77 KB, 下载次数: 96)
下载附件
2023-6-2 15:11 上传















查看全部评分