1. 概述

提到蚂蚁森林,大家应该都知道,你是否有因忘记收取能量而被好友收取的经历呢?

如果你不是蚂蚁森林重度用户,被别人收取了能量可能对你来说没什么。

但如果你是蚂蚁森林重度用户,遇到能量被偷 ...

本文我们来看一下如何使用 Python + Appium 实现定时自动化收取蚂蚁森林能量。

2. 环境

本文主要环境如下:

  • Win7

  • 小米5s

  • Python3.7

  • Appium1.5

  • 支付宝10.2.6.7010

如果对环境搭建不熟悉的话,可以看一下:Python + Appium 自动化操作微信入门和我用 Python 找出了删除我微信的所有人并将他们自动化删除了。

3. 实现

功能实现的基本思路为:

  • 打开支付宝进入蚂蚁森林,收取自己的能量

  • 收取完自己能量后,点击找能量进入好友蚂蚁森林,收取好友能量,以此类推

接下来我们看一下主要代码实现。

参数配置代码实现如下:

desired_caps = {"platformName": "Android", # 系统"platformVersion": "8.0.0", # 系统版本号"deviceName": "m5s", # 设备名"appPackage": "com.eg.android.AlipayGphone", # 包名"appActivity": "AlipayLogin", # app 启动时主 Activity'noReset': True # 保留 session 信息,可以避免重新登录
}

通常大家都会将蚂蚁森林放在支付宝首页,此时我们打开支付宝后直接点击蚂蚁森林选项即可进入。

代码实现如下:

driver.find_elements_by_id('com.alipay.android.phone.openplatform:id/home_app_view')[10].click()

进入自己蚂蚁森林之后,开始收取自己的能量,因为新版支付宝不能定位能量球元素了,所以我们需要在能量球可能出现的区域实现点击。收取能量的代码实现如下:

# 收取能量
def collect_energy(driver):print('开始收取能量')# 获取手机屏幕宽高width = int(driver.get_window_size()['width'])height = int(driver.get_window_size()['height'])# 能量球可能出现的区域坐标start_x = 110end_x = 940start_y = 460end_y = 880for i in range(start_y, end_y, 80):for j in range(start_x, end_x, 80):tap_x1 = int((int(j) / width) * width)tap_y1 = int((int(i) / height) * height)# 点击指定坐标driver.tap([(tap_x1, tap_y1), (tap_x1, tap_y1)], 1000)print('能量收取完毕')

自己能量收取完毕之后,点击找能量进入好友蚂蚁森林继续收取能量,代码实现如下:

# 找能量
def search_energy(driver):print('找能量,收取好友能量')time.sleep(3)# 点击找能量driver.tap([(1000, 1520), (1080, 1580)], 1000)time.sleep(3)# 收取好友能量collect_energy(driver)time.sleep(3)# 收取完毕继续找能量search_energy(driver)

能量收取的功能实现了之后,我们使用定时任务实现定时收取即可,下面看一下定时任务的实现。

定时任务的实现我们使用 apscheduler 组件,使用之前需执行 pip install apscheduler 装一下。

定时任务的代码实现如下:

scheduler = BlockingScheduler()
# collect_main:定时执行的方法
scheduler.add_job(collect_main, 'cron', hour=20, minute=23, second=20)
try:scheduler.start()
except (KeyboardInterrupt, SystemExit):pass

到此,我们利用 Python + Appium 实现定时自动化收取蚂蚁森林能量的工作就完成了。

源码在公号 Python小二 后台回复 201116 获取。

< END >

原创不易,求分享、在看、赞

用Python实现定时自动化收取蚂蚁森林能量,再也不用担心忘记收取了相关推荐

  1. python模拟蚂蚁森林能量产生过程代码_用Python实现定时自动化收取蚂蚁森林能量,再也不用担心忘记收取了...

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

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

    2. 环境 本文主要环境如下: Win7 小米5s Python3.7 Appium1.5 支付宝10.2.6.7010 3. 实现 功能实现的基本思路为: 打开支付宝进入蚂蚁森林,收取自己的能量 收 ...

  3. python支付宝每天自动收能量_用Python实现定时自动化收取蚂蚁森林能量,再也不用担心忘记收取了...

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

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

    1. 概述 提到蚂蚁森林,大家应该都知道,你是否有因忘记收取能量而被好友收取的经历呢? 相关文件 小伙伴们可以关注小编的Python源码.问题解答&学习交流群:733089476 有很多的资源 ...

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

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

  6. collect的功能是什么?其底层如何实现的?_用Python实现定时自动化收取蚂蚁森林能量,再也不怕被偷了

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

  7. python自动收取蚂蚁森林能量_用 Python 实现定时自动化收取蚂蚁森林能量

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

  8. python支付宝自动收能量_守护支付宝的财产,使用Python实现定时自动化收取蚂蚁森林能量...

    Python 兄弟姐妹们谁年轻是没有玩过农场,牧场游戏,现在有了蚂蚁森林,你是否有因忘记收取能量而被好友收取的经历呢? 如果你不是蚂蚁森林重度用户,被别人收取了能量可能对你来说没什么. 但如果你是蚂蚁 ...

  9. 用 Python 实现定时自动化收取蚂蚁森林能量

    1.概述 提起蚂蚁森林我们都有忘记收取能量的时候,最后都被自己的好友收取,是不是很心痛 本文我们来看一下如何使用 Python + Appium 实现定时自动化收取蚂蚁森林能量. 2. 环境 本文主要 ...

最新文章

  1. 新手可以做的ai比赛:亲测有效
  2. canvas用2d渲染出3d的感觉
  3. Spring IOC-BeanFactory的继承体系结构
  4. 小米9全面现货还降价,米粉却心情复杂?
  5. think php left join,Thinkphp两张数据表left join怎么让相同字段不被覆盖?
  6. Java设计模式学习总结(14)——结构型模式之代理模式
  7. pythonturtle是标准库_Python标准库: turtle--海龟绘图。
  8. python制作表格的语句_python根据Excel自动生成创建表sql语句
  9. 闭合导线平差计算(表面)
  10. mcgs 安装没有权限_我的电脑为什么不能安装mcgs组态软件
  11. 国内机器人编程赛事大全介绍
  12. badbody下_badboy下载_badboy测试工具2.0.5官方免费版 - 系统之家
  13. existed hive ods_hive外部表
  14. 云服务器ECS是什么
  15. GBD+XGBOOST算法原理深入解析
  16. 天猫整站SSM项目(二)数据库设计
  17. C++异常传递三种不同方式介绍
  18. 计算机数学与高中数学衔接,高中数学的断层与衔接研究论文
  19. 【问题篇】Springboot解决报错“java.sql.SQLException: Unable to load authentication plugin ‘caching_sha2_passw”
  20. 人工神经网络技术及应用,人工神经网络发展前景

热门文章

  1. 95后创业者:百筹大战,众筹平台出路在何处
  2. macOS Catalina 之「随航」自带扩展屏
  3. 51单片机常见的硬件电路
  4. 如何用Python来写pm2.5空气质量查询程序
  5. 机房--服务器---CDN详解
  6. NAT(网络地址转换器)
  7. 邮件服务器要安装哪些组件,邮件服务器:安装POP3和SMTP服务组件步骤详解
  8. 微信打飞机android版
  9. 2. 手势识别系统设计——使用 Face++ API
  10. 微信服务器IP地址详解,并判断该地址是否来自微信