Auto.js实现i茅台自动化申购

i茅台自动化申购

文章目录

  • i茅台自动化申购
  • 前言
  • 一、前提条件
  • 二、代码示例
  • 总结


前言

现在茅台行情十分火热,茅台集团推出了i茅台APP供大家申购。下面介绍使用Auto.js实现自动化申购。


一、前提条件

需要下载Auto.js的apk,下载链接为:https://github.com/TonyJiangWJ/Auto.js/releases/download/v4.1.1/AutoJS.Modify.latest.apk
安装之后按照提示打开无障碍服务
脚本使用方法:将文件放置在手机SD卡脚本文件夹下,进入Auto.js软件刷新即可看见本JS文件,点击三角运行符号等待启动运行即可。

二、代码示例

代码如下(示例):

//等待开启无障碍服务并运行脚本
auto.waitFor();
purchase_buy();
function purchase_buy(){
log("申购任务开始")
//打开日志控制台
console.show();
//打开App
launchApp('i茅台');
//跳过开屏
click_text_element("跳过",true);
//进入主页
wait_come_home_page();
//滑动至预约申购入口
let index = 0;
 while(index<2){
//滑动一次
swipe(450, 1500, 450, 450, 500)
 index+=1;
}
//进入【申购】
var view2 = className("android.widget.ImageView").depth(12).drawingOrder(4).indexInParent(3);
if (view2.exists()) {
log("找到并点击享约申购");
view2.click();
sleep(1500);
}else
log("未找到享约申购");
let index = 0;
while(index<5){
//滑动一次
swipe(450, 1500, 450, 450, 500)
index+=1;
}
var good_enterences = id("bt_goods").find()
log("本次入口有:",good_enterences.length)
//商品标题
for(let good_enterence of good_enterences){
log("文本:",good_enterence.text())
if(good_enterence.text()==='预约申购'){
good_enterence.click()
}else{
log("该条已经申购,过滤掉。。。")
}
}
real_buy();
}
//阻塞等待
function wait_come_home_page(){
    //等待加载到主页
    textContains('首页').waitFor();
    textContains('云购').waitFor();
    log("完全进入到主页")
}
/**
 * 在控制台统一输出内容
*/
function log(msg) {
    console.log(msg)
}

//根据文本内容查找元素,并执行点击操作
function click_text_element(content,is_wait){
    //是否需要等待
    if(is_wait){
      textContains(content).waitFor();
      log("等待"+content+"加载完成")
    }
    //查找元素
    var buy_element = text(content).findOne()
    if(buy_element){
        log("点击"+content)
        click(buy_element.bounds().centerX(), buy_element.bounds().centerY());
    }else{
        log("找不到"+content)
    }
}

//真实预约
function real_buy(){
   log("开始申购")
   //等待【选择门店】页面加载完全
   id("btReserve").waitFor()
   //由于抢到即使赚到,这里直接取默认地址的第一个
   id("btReserve").click()
   //确定申购
   text("确定申购").findOne().click()
   //点击【查看详情】,返回申购列表
   text("查看详情").findOne().click()
   //返回
   back_main_page()
}

总结

以上就是今天要讲的内容,本文仅仅简单介绍了i茅台自动化申购的使用及代码示例,希望能帮助到大家,实现大家的茅台梦。

你可能感兴趣的:(Auto.js开发功能记录,javascript,自动化,i茅台,android,auto.js)