Auto.js|Auto.js 大象就医辅助挂号思路
Auto.js 大象就医辅助挂号思路
纯技术分享,没有完整源码。
起因
现在云南这边医疗资源还是比较紧张。比较好的医院就那么一两个,每次想挂个号什么的,往往得通过vip手段。要么就得早上6点医院门口站队。
经过多次摧残。。以我的手速是抢不到了。
辅助技术选择
以前用玩苹果机的时候用触动精灵写过辅助。内置的脚本语言是lua,然而并不是太熟。。
现在手持小米5一部,看看android的。以前一直关注着一个开源项目 Auto.js 这次就索性用js来写写辅助。
Auto 简介
【Auto.js|Auto.js 大象就医辅助挂号思路】一个主要由无障碍服务实现的不需要Root权限的类似按键精灵的自动操作软件,可以实现自动点击、滑动、输入文字、打开应用等。
代码思路
唤起app
app.launch("com.neusoft.niox");
跳过广告
var jumpad = threads.start(function () {
while (!click("跳过"));
});
选择科室
这里科室列表在不可挂号的时候显示会空,这里我的做法是单独起个线程。通过来回点击刷新页面
文章图片
1.png
setInterval(function () {
var tv_find_hosps_top=id("tv_find_hosps_top").findOne(1000)
if (tv_find_hosps_top!=null){
//TODO:查找页面内需要挂号的医院。点击
sleep(1000);
var tv_dept = id("tv_dept").findOne(1000);
if (tv_dept != null) {
var list_dep = className("android.view.ViewGroup").find();
if (list_dep.empty()) {//TODO:科室列表为空,点击返回,
id("layout_previous").findOne().click();
} else {
//TODO:科室列表不为空,停止线程。
yyfcthread.interrupt();
}
}
}}, 1000);
选择挂号的日期
这里根据医院的不同规则,我这边想挂的医院为提前一周挂号,点击进来这个页面并没显示完全我需要的信息,这里就直接通过两次点击选择上我们需要的医生就行。
选择预约的时间
文章图片
2.jpg 都说是抢号了。只能是有了就下手,这里的逻辑就是不停的刷新当前的页面获取能预约的时间。点击进入下单页面。
setInterval(function () {
let appointment = id("iv_only_appointment").findOne(800);
if (appointment != null) {
appointment.click();
var listtime = id("tv_doctor_time_point").find();
if(!listtime.empty()){//1.预约时间不为空
var firstbtn = listtime.get(0);
var time_txt = firstbtn.text();
if (time_txt.indexOf('满') < 0) {//2.点击的不能是已经预约过的时间
console.log("firstbtn click" + firstbtn.parent().click());
makeAppointment();
}
}
}
}, 800);
//循环点击
预约单
这个页面就是需要点击下我已阅读的按钮,再点击下确认就ok。
推荐阅读
- 腿毛大象腿的我没有了夏天的“春天”
- 恒安标准老年恶性肿瘤险--专注防癌安享就医,关爱父母从此开始
- {调取该文章的TAG关键词}|金融“云化”,大象“起舞” | 产研案例
- 投稿|奔驰中国「大象转身」,杨铭3年成绩几何?
- 从冰箱装大象到女娲造人,带你彻底吃透Python面向对象编程
- 投稿|主动减负的“蚂蚁兵团”,还能成为“大象”吗?