本脚本支持仅1920*1080 像素分辨率的机子上面正常运行。

-------------------------------------------------------------------------------

我是真的懒,连能量都不想好好收,因此写了脚本来自动帮我收能量.

Auto.js 这款脚本应用我们在应用市场可以很方便搜索到,它在没有root的时候可以通过开启无障碍服务来实现模拟点击滑动,监听等等.使用下面这个脚本,可以实现打开支付宝,进入蚂蚁森林(你得将它添加到主页常用子应用中),滑动,查找有能量的好友,进入收集。

好好享用,那么上代码:

/*** * @name 支付宝自动收能量脚本* @author Oliver* @description 需要您的设备分辨率为1920*1080;小米8上,截图需要手动允许,需要点击 “立即开始”; 开始运行时请保证支付宝已经处于首页*/auto();
main();/*** 下面注释代码可以进一步完善,读取到可以收取的时间,做个记录,然后到时间自动进去收集*
events.observeNotification();
events.onToast(function (toast) {var text = toast.getText();var appName = toast.getPackageName();var subIdx = text.indexOf("后");if (appName == "com.eg.android.AlipayGphone" && subIdx != -1) {var sub = text.substring(0, subIdx);var idxHour = sub.indexOf("小时");var idxMin = sub.indexOf("分");var hour = 0;var min = 0;if (idxHour == -1) {var stringMin = sub.substring(0, idxMin);min = parseInt(stringMin)} else {var stringHour = sub.substring(0, idxHour);var stringMin = sub.substring(idxHour + 2, idxMin);hour = parseInt(stringHour)min = parseInt(stringMin)}var time = (hour * 60 + min) * 60 * 1000;if (nextTime > time) {nextTime = time;}log("NextTime=" + hour + ":" + min + " Microseconds=" + nextTime + "ms");}});
//setTimeout(function() {
//}, 1000*1);
// main();var nextTime = 900000000000;*/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那个真的好用;-)

#! -*- coding=utf-8 -*-
from uiautomator import Device
from uiautomator import Adb
import os
import cv2
import numpy as np
from matplotlib import pyplot as pltdef 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')method = eval('cv2.TM_CCOEFF_NORMED')res = cv2.matchTemplate(img2,template,method)  threshold = 0.5loc = 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 arrif __name__ == "__main__":d = Device("7cba0eb")# d.screen.on()   # a = Adb()# os.system("adb shell am start -n com.eg.android.AlipayGphone/.AlipayLogin")# # a.cmd("shell am start -n com.eg.android.AlipayGphone/.AlipayLogin")# d(text="蚂蚁森林").click()# # d(text="种树").click(# print d.info# d.wait.idle()# d.wait.update()# d.screenshot("1.png")# d(scrollable=True).fling()# web = d(className="com.uc.webview.export.WebView")# web = d(className="com.uc.webkit.WebView")# web.scroll.toEnd()# web.swipe.down()# web.click(800,940)# d.wait.update()# web = d(className="com.uc.webview.export.WebView")d.screenshot("1.png")loc= match()print loc# print (tl[0]+br[0])/2,(tl[1]+br[1])/2# d.click((tl[0]+br[0])/2,(tl[1]+br[1])/2)    # d.wait.update()# for y in range(400,870,100):#     for x in range(50,1080,100):#         d.click(x,y)

Auto.js:实现蚂蚁森林自动收能量(懒人的高效生活)相关推荐

  1. 使用Auto.js实现蚂蚁森林自动收取能量

    在网上看了一些自动收能量的脚本 根据自己的手机型号 华为荣耀9 分辨率为1980*1080 写了一个脚本 使用AutoJs运行 定时每天早上7点开始收能量(再也不用担心我的能量被偷啦 哈哈~) Aut ...

  2. 蚂蚁森林自动收能量的最新脚本

    环境必须是安卓7.0以上版本.中文界面. 安装软件,执行Auto.js代码.完成.注意自启动,锁定后台,无障碍服务,悬浮窗等权限允许. 注意需要把脚本和图片放到执行文件夹的同一目录下. 首先所有资料链 ...

  3. 苹果 python蚂蚁森林自动收能量_GitHub - dxp432/adb_python_alipay_AntForest: 蚂蚁森林自动收取能量、偷取能量、浇水(使用adb、python)...

    蚂蚁森林自动收取能量.偷取能量.浇水 蚂蚁森林自动收取能量.偷取能量.浇水(使用adb.python)adb_python_alipay_AntForest 涉及到的技术: 1.python 2.ad ...

  4. 苹果 python蚂蚁森林自动收能量_用Python实现定时自动化收取蚂蚁森林能量,再也不用担心忘记收取了...

    1. 概述 提到蚂蚁森林,大家应该都知道,你是否有因忘记收取能量而被好友收取的经历呢? 如果你不是蚂蚁森林重度用户,被别人收取了能量可能对你来说没什么. 但如果你是蚂蚁森林重度用户,遇到能量被偷 .. ...

  5. 30 行代码实现蚂蚁森林自动收能量(附送源码)

    点击上方 IT牧场 ,选择 置顶或者星标技术干货每日送达! blog.csdn.net/article/details/113734855 推荐:https://www.xttblog.com/?p= ...

  6. 30 行Python代码实现蚂蚁森林自动收能量(附送源码)

    公众号 "菜鸟学Python", 设为 "星标" 带你一起学Python 编辑:业余草 blog.csdn.net/article/details/113734 ...

  7. 苹果 python蚂蚁森林自动收能量_Python自动化收取蚂蚁森林能量,不错过暗恋的她...

    作者 | 锅g头 来源 | Crossin的编程教室最近在家远程工作,结果作息更混乱了 ,早上起不来,导致我蚂蚁森林能量天天被偷,严重影响我沙漠造树"大业" .于是我决定用pyth ...

  8. 好厉害!30 行代码实现蚂蚁森林自动收能量

    点击上方蓝色"终端研发部",选择"设为星标" 学最好的别人,做最好的我们 虽然我支付宝加了好多好友,平时有很多能量可以"偷",但由于太懒,至 ...

  9. 苹果 python蚂蚁森林自动收能量_通过测试工具自动收取蚂蚁森林能量

    本文仅为自动化工具appium的技术研究,请勿用于任何非正当用途 最近在家远程工作,结果作息更混乱了,早上起不来,导致我蚂蚁森林能量天天被偷,严重影响我沙漠造树"大业" ‍♂️.于 ...

  10. 苹果 python蚂蚁森林自动收能量_蚂蚁森林自动收取能量、偷取能量、浇水(使用adb、python)...

    涉及到的技术: 1.python 2.adb 具备的功能: 1.自动收取能量 2.自动偷取能量 3.自动给指定的朋友浇水 使用方法: 1.打开电脑,USB线一头接手机,一头接电脑. 2.电脑运行pyt ...

最新文章

  1. Podfile 常见语法
  2. qq音乐 android pad版,QQ音乐HD(com.tencent.qqmusicpad) - 4.12.1.4 - 应用 - 酷安
  3. python怎么拆分没有分隔符字符串_python如何拆分含有多种分隔符的字符串
  4. hyper-V 检查点
  5. 苏区振兴下的赣州发展状况分析
  6. Windows7系统自带的备份与还原功能使用介绍
  7. R语言第八讲 评估模型之交叉验证法分析案例
  8. c语言 乱序字符,C语言中两种结构体成员初始化方式:顺序和乱序
  9. linux卸载xmind,Ubuntu下安装Xmind
  10. 饿了么ui 下拉框远程搜索 绑定清空原始数据
  11. graphic头文件函数_C语言图形函数库总结graphics.h
  12. 腾讯即将发布区块链游戏,网友大呼求别再养猫养狗了!
  13. Linux中rm -rf 文件夹,删不掉
  14. Kafka学习——基于已有zookeeper集群实现kafka的集成
  15. excel如何把多张表合并成一个表_如何快速把多个excel表格合并成一个excel表
  16. 组播IGMP-原理介绍+报文分析+配置示例
  17. 小米路由器登录服务器无响应是怎么回事,小米路由器登录界面打不开怎么办? | 192路由网...
  18. java gravity_Android属性gravity与layout_gravity的区别
  19. vijos1153 猫狗大战
  20. EXCEL-分组排名(中美)

热门文章

  1. 腾讯云表格识别Python-SDK使用
  2. 【KEIL5】 STM32F103C8T6 不能编译,启动文件错误导致Could not load file ‘D:\MyTest\Project\output\Projiect.axf‘
  3. Java实现 LeetCode 383 赎金信
  4. 2019-3-8-win10-uwp-一张图说明水平对齐和垂直对齐
  5. 《微观经济学新论》读书笔记
  6. 操作系统的完整代码——编写YCOS应用程序
  7. MMS-MTK-Obigo03c
  8. 浏览器发送POST请求
  9. 游戏建模:21个人脑壳雕刻小小技巧,非常有用
  10. PySpark RDD 之collect、 take、top、first取值操作