Auto.js:实现蚂蚁森林自动收能量(懒人的高效生活)
参与'支付宝蚂蚁森林'活动,可兑换实物优惠券 #生活技巧# #省钱技巧# #优惠券领取平台#
本脚本支持仅1920*1080 像素分辨率的机子上面正常运行。
-------------------------------------------------------------------------------
我是真的懒,连能量都不想好好收,因此写了脚本来自动帮我收能量.
Auto.js 这款脚本应用我们在应用市场可以很方便搜索到,它在没有root的时候可以通过开启无障碍服务来实现模拟点击滑动,监听等等.使用下面这个脚本,可以实现打开支付宝,进入蚂蚁森林(你得将它添加到主页常用子应用中),滑动,查找有能量的好友,进入收集。
好好享用,那么上代码:
auto();
main();
var end = false;
function main() {
toast("程序开始运行!");
launchApp("支付宝");
sleep(3000);
click("蚂蚁森林");
sleep(3000);
collect();
swipe(540, 1910, 540, 100, 500)
swipe(540, 1910, 540, 100, 500)
swipe(540, 1910, 540, 100, 500)
click(672, 954);
sleep(2000);
swipe(540, 1800, 540, 1800 - 240, 500);
sleep(500);
toast("现在开始收集能量了!");
while (!end) {
execute();
}
}
function execute() {
swipe(540, 1919, 540, 88, 500)
col();
swipe(540, 1734, 540, 1734 - 156, 500)
click(540, 1918);
sleep(2000);
swipe(540, 1857, 540, 155, 500);
sleep(1000);
col();
}
function col() {
if (!requestScreenCapture()) {
toast("没有截图权限,程序退出!");
exit();
end = true;
}
var img = captureScreen();
for (var i = 187; i <= 1816; i = i + 200) {
if (isEnd(img, i)) {
back();
sleep(1000);
back();
sleep(1000);
back();
sleep(1000);
toast("完成任务啦!")
end = true
}
var p = getColor(img, i);
if (p) {
click(1017, p.y + 20);
sleep(3000);
collect();
back();
sleep(1000);
} else {
log(i + " p=null");
}
}
}
function getColor(img, y) {
var p = findColor(img, "#30bf6c", {
region: [1017, y, 63, 100]
});
return p;
}
function isEnd(img, y) {
var p = findColor(img, "#30bf6c", {
region: [860, y, 10, 10]
});
return p != undefined;
}
function collect() {
for (var y = 460; y <= 860; y += 100) {
for (var x = 185; x <= 890; x += 100) {
click(x, y);
}
}
}
Python中的实现,我们使用android的自动化测试库uiautomator来实现,使用opencv来实现对截图的中可搜集小手的识别,目前还不是很完善,提供一个思路,希望有时间的你来实现,其实Auto.js那个真的好用;-)
from uiautomator import Device
from uiautomator import Adb
import os
import cv2
import numpy as np
from matplotlib import pyplot as plt
def match():
img = cv2.imread("1.png",0)
img2 = img.copy()
template = cv2.imread("match.png",0)
w,h = template.shape[::-1]
method = eval('cv2.TM_CCOEFF_NORMED')
res = cv2.matchTemplate(img2,template,method)
threshold = 0.5
loc = np.where( res >= threshold)
arr = []
for pt in zip(*loc[::-1]):
cv2.rectangle(img, pt, (pt[0] + w, pt[1] + h), (0,0,255), 2)
d = (pt,(pt[0] + w, pt[1] + h),)
arr.append(d)
cv2.imwrite('res.png',img)
return arr
if __name__ == "__main__":
d = Device("7cba0eb")
d.screenshot("1.png")
loc= match()
print loc
网址:Auto.js:实现蚂蚁森林自动收能量(懒人的高效生活) https://www.yuejiaxmz.com/news/view/374194
相关内容
用旧物回收玩“种树”,联合国点赞5亿支付宝蚂蚁森林用户蚂蚁森林×六大博物馆,带你看古代的绿色生活灵感
耐克旧鞋新生计划与蚂蚁集团 “绿色能量行动” 携手合作
飞蚂蚁旧衣回收给钱吗
飞蚂蚁闲置娃娃回收行动,给山区孩子的温暖开学礼
Auto.js:开创智能自动化的新时代
耐克旧鞋新生计划与蚂蚁集团“绿色能量行动”携手合作 用行动让世界变得更加美好
环保生活从选择蚂蚁筑家全铝家具开始
蚂蚁筑家全铝家具,打造环保生活典范
消灭蚂蚁最高效最彻底的方法,省时省力又安心!