研究了两个晚上,终于弄懂精准点击鸡付宝的花花卡任务
autojs吧
全部回复
仅看楼主
level 1
双玉赋
楼主
像这种页面,不管控件、层级、排序、文字、属性…什么都一模一样的。根本就没法点击。
靠坐标更不可能,坐标是死的,页面是活的。
靠识图更更不可能,不能看每个键都设置一张图片,还有文字长度一样的时候,辨识度调到99%都会识别失败。
2023年07月08日 15点07分
1
level 1
双玉赋
楼主
代码不重要,思路重要。
先把要点击的控件,上下调整到中间,一直循环滑动,直到滑到能点击的区域,跳出循环。
2023年07月08日 15点07分
2
level 1
双玉赋
楼主
根据控件1的坐标,设置控件2的坐标。
控件2的x1和x2,可以根据手机分辨率限定。
控件2的y1比控件1稍微小一点点,y2稍微大一点的。
在这个区域内判断文字。就ok了
2023年07月08日 15点07分
3
level 1
双玉赋
楼主
一个板块的代码参考。研究两晚上的心血
2023年07月08日 15点07分
4
level 1
贴吧用户_GCyW4MD
直接录制会不会好一点
2023年07月08日 16点07分
5
双玉赋
我手机没弄rt,录不了
2023年07月08日 23点07分
level 6
西门Muse
周围都是黄色的图片,只有这个是绿色的那找绿色不就行了
2023年07月09日 02点07分
6
双玉赋
第一个控件好找,就只搜汉字都行,并不需要识图。 主要是第二控件要复杂些,并不是每个任务都需要去做,在确定需要点击的任务,来匹配判断今日是否已完成这个。 直接搜去完成、已完成,会匹配很多个重复控件。
2023年07月09日 03点07分
level 3
大哥言
var 已完成控件=text("逛一逛月月赚活动会场") .findOne().parent().child(3);
log(已完成控件.text());
用父子控件轻松搞定
2023年07月09日 14点07分
7
双玉赋
谢谢大佬,我在研究研究
2023年07月10日 04点07分
起风_qfl
@双玉赋
试试,已完成控件.click()
2023年07月11日 05点07分
双玉赋
@起风_qfl
这样是能点击的,就是还得判断一个前置条件。如果出现的是去完成才不点击,是已完成则不点击。如果没有这个键用findOne()会卡死或报错
2023年07月11日 05点07分
level 1
双玉赋
楼主
根据7楼大佬的方法:父子控件,只能做到气泡提示。这个只需要一句就行:
toast(控件1.parent().child(3).text())
,但这效果只能起到提示,还是得人工判断。(跟人工找到控件并判断是一样。)
自动判断并执行,感觉代码也不简单,这个方法能用,到不知道还有没有更简单的方法。
2023年07月11日 02点07分
8
level 1
双玉赋
楼主
8楼图,把注释去掉,就是这样
2023年07月11日 02点07分
9
大哥言
var 去完成 = text("开通停车计费提醒").findOne().parent().findOne(text("去完成")); log(去完成); if (去完成) { 去完成.click() } else { toast("已完成"); } 调试过了,也不用滑动查找。
2023年07月11日 12点07分
双玉赋
@大哥言
谢谢,我又试了一下,可以
2023年07月11日 12点07分
冷饮_
@大哥言
大哥,烟🔥
2023年07月15日 15点07分
1