1. 概述

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

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

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

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

2. 环境

本文主要环境如下:

Win7

小米5s

Python3.7

Appium1.5

支付宝10.2.6.7010

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 = 110

end_x = 940

start_y = 460

end_y = 880

for 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 获取。

来源:https://www.icode9.com/content-1-757201.html

python自动收取蚂蚁森林能量_用 Python 实现定时自动化收取蚂蚁森林能量相关推荐

  1. python自动抓取指定信息_使用python自动转发抓取的网页信息

    1.[代码][Python]代码 # -*- coding: utf-8 -*- from selenium import webdriver import time from email.heade ...

  2. python自动下载酷狗音乐_使用Python下载酷狗音乐

    使用Python+Selenium+Urllib下载酷狗歌曲 最近想下载一首歌,找了各大音乐平台,觉得在酷狗上下载更容易. 首先是获取原音频地址(本文以野狼disco为例),存储在标签里的src属性中 ...

  3. python 自动交易接口是什么_基于Python的股票实盘交易接口的实现与应用

    概在半个多月前,一个朋友联系我,让我帮忙实现一个程序自动下单交易的功能.按照以往对待用户的习惯,很愉快的就答应了,也抽时间研究了一下,起初并没有太多精力和时间去开发,直到迎来了祖国妈妈的生日,本来也不 ...

  4. python 自动发邮件模块抄送_一个python的邮件发送脚本,自动,定时,可以附件发送,抄送...

    #mail.py使用方法: 1,本脚本同目录下文件介绍: sender.list:邮件发送者邮箱和密码,第一行账号(如example@example.com),第二行密码(必须项,不能为空) rece ...

  5. python自动接收钉钉信息_用Python实现阿里钉钉机器人读取数据库内容自动发群通知...

    from datetime importdatetimeimportjsonimporturllib.requestimportpymysql as pmsfrom apscheduler.sched ...

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

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

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

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

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

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

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

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

最新文章

  1. str python3_python3 str(字符串)
  2. 分析linux系统的运行性能,Linux系统如何分析CPU的性能瓶颈
  3. 法语语言考试C1,法语考试大比拼:专八与Dalf C1,哪个更难?
  4. canvas整体放大_【HTML5】Canvas 实现放大镜效果
  5. element表格固定某一行_WPS表格快捷键讲解大全1(区域选取)!
  6. 思科网络基础课件_上海思科CCNA培训、思科网络工程师培训
  7. postgresql删除索引_PostgreSQL 13 发布,索引和查找有重大改进
  8. JAVA实现1到100的平方根之和_手算平方根和基于 Java BigInteger 的大整数平方根的实现...
  9. 解决:Ubuntu18.04配置exoprt LC_ALL=C后无法打开终端
  10. C#4.0的十种语法糖
  11. 阐述SDN的原理、SDN使用场景、SDN技术的优缺点、SDN发展现状及分析SDN对社会和环境的影响
  12. FBReader集成后,打开书出现空白页面
  13. Python爬虫之头条采集免费方法
  14. 国内访问Github的方法
  15. 解决IDEA中使用git插件提交代码乱码问题
  16. 此nvidia驱动程序与此windows版本不兼容,此图形的驱动程序无法找到兼容的驱动硬件
  17. 微信小程序-登录(wx.login)
  18. 地图切片的概念与原理
  19. 【大数据存储技术】思考题及参考答案
  20. 2009年国际电力行业十大新闻

热门文章

  1. android盒子耗电,家中最耗电的不是电视,而是安卓盒子,赶紧拔掉
  2. mysql 用户权限
  3. Unity--随机生成游戏对象
  4. android 比分牌效果,Android自定义控件实现球赛比分条效果
  5. .net里Properties 文件夹中的东东
  6. C语言依然位居榜单前列,依然值得程序员学习
  7. 论文阅读--A Tutorial on Stance Detection
  8. 与豆瓣杨勃聊天 长尾 推荐机制
  9. c语言编写一个能计算银行存款的小程序。
  10. linux c readdir 顺序,Linux读取目录函数readdir以及inode结构简介