python支付宝蚂蚁森林_Python教你迅速成为“蚂蚁森林排行榜”第一名
转自:Crossin的编程教室
-
最近在家远程工作,结果作息更混乱了,早上起不来,导致我蚂蚁森林能量天天被偷,严重影响我沙漠造树“大业”。
于是我决定用python写个自动偷能量的程序,每天早上定时偷取好友能量,“称霸”蚂蚁森林。(本文仅为自动化测试技术研究,请勿滥用)
环境配置
首先需要安装配置好appium自动化测试工具。appium是一个开源、跨平台的测试框架,可以用来测试原生及混合的移动端应用,支持IOS、Android及FirefoxOS平台。
大致流程:先在官网(appium.io)下载安装appium,然后安装Android SDK(我的方法是安装Android Studio,在它里面可以安装Android SDK),最后再安装JAVA,并配置JAVA_HOME和CLASSPATH两个参数的环境变量,然后就可以使用appium啦!
使用介绍
安装appium有两个目的,一是使用python的appium模块需要先打开appium客户端,否则无法使用;二是便于我们查找某个app某个界面的元素,初次打开时如图所示:
配置好4个参数,第一个参数是手机操作系统,第二个参数是手机型号,在设置中可以找到,第三、四参数是app的两个特定值,点击start session就可以操控手机了。
开发步骤
第一步:appium自动化测试app首先需要找到 ‘appPackage’ 和 ‘appActivity’ 两个参数
这里给大家介绍一种通用的找手机app这两个参数的方法:
1. 先找到获取apk信息工具(android SDK的aapt工具)所在的位置;
2. 下载支付宝app,记住存放位置;
3. 打开命令行,输入以下信息
在输出信息中可以找到
appPackage 和 appActivity的值:
第二步:打开支付宝,模拟点击,进入蚂蚁森林界面
正常情况下,appium操控打开app时,需要配置一下参数:
但是这种配置方式会默认从头打开app,需要验证各种信息,而且需要重新登录,今天教大家如何避免重新登录,只需添加2个参数就ok:
这样就会避免重新登录了。
下面就是模拟点击元素操作了,找app元素的方法如下:
只需用客户端appium打开手机APP,然后将鼠标放在需要点击的部位,在右侧就能找到该部位的元素了。然后依次点击下图按钮:
代码如下:
第三步:依次点击进入好友蚂蚁森林主页
如图所示,我需要点击一次点击进入每个好友的主页,我采取的方式是只点击进入第一个框所在的坐标,然后模拟向上滑动1个框的高度,这样依次就可以点击到每个好友了,代码如下:
需要注意的是,个人的主页是点不开的,但是不用做相应处理,因为点不进去就会在当前界面进行检测,判作无能量球,继续滑动到下一个。
第四步:检测有无可收取得能量
经过分析元素,蚂蚁森林主页可以分为2类情况,第一种是没有能量球,第二种是有能量球,判断方法是比较上图中classname的数量,若大于5则代表有能量球,反之则没有,代码如下:
然后再进一步分析能力球能否能收取,很简单,只需要判断每个classname的text是否含有“能量”这2个字就ok了,因为不可收取的能量球不含这两个字,代码如下:
为了防止有的能量没到时间,到最后一个好友时,需要返回顶端重新开始检测,我采取的方式是连续点击两次左上角的返回键,然后再重复上述的点击“查看更多好友”步骤,代码如下:
第五步:效果展示
好了,这下再也不用担心我的小树苗了!
文中使用的代码,请在公众号后台回复关键字获取: 蚂蚁森林
感谢阅读
推荐阅读:
1:真实的上海IT圈:张江男vs漕河泾男
2:真实的北京IT圈:后厂村姑 vs 后厂村花?
3:为什么你的提问没人解答?
4:Python爱好者社区历史文章合集
好看请点这里~
python支付宝蚂蚁森林_Python教你迅速成为“蚂蚁森林排行榜”第一名相关推荐
- Python教你迅速成为蚂蚁森林排行榜第一名
最近在家远程工作,结果作息更混乱了,早上起不来,导致我蚂蚁森林能量天天被偷,严重影响我沙漠造树"大业".于是我决定用python写个自动偷能量的程序,每天早上定时偷取好友能量,&q ...
- Python教你迅速成为“蚂蚁森林排行榜”第一名
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:作者锅g头/Crossin的编程教室 PS:如有需要Python学习 ...
- python支付宝自动转账_python实现支付宝转账接口
python实现支付宝转账接口 发布时间:2020-09-14 03:23:42 来源:脚本之家 阅读:128 由于工作需要使用python开发一个自动转账接口,记录一下开发过程. 首先需要在蚂蚁金服 ...
- python支付宝自动支付_python 调用支付宝支付
支付宝接口集成,本地环境调试支付请求 1.首先登录 蚂蚁金服网站,也就是支付宝开发者平台 登录蚂蚁金服开发者平台后,创建沙箱应用 开发者平台 也就是支付宝给开发者提供的调试环境应用 沙箱测试应用 2. ...
- python如何高效办公_Python教你高效办公,自制屏幕翻译工具
python视频教程栏目为大家介绍Python自制屏幕翻译工具的方法. 免费推荐:python视频教程 1. 场景 大家如果平常遇到不认识的英文,相信大部分的人都会复制内容后,使用翻译软件,或者拷贝到 ...
- python课件百度文库_python教-教学课件.doc
python教-教学课件 第五单元 进阶程序设计(总10课时) 选择编程语言(1课时) 一.教学目标 1.了解程序设计语言和两种翻译方式:了解Python背景.功能.安装,熟悉Python编程环境:编 ...
- python代码写名字_python|教你一行代码用Ta的名字比心
关注我们:科技与Python 故事是这样的:你的女朋友名字叫andy,由于她学习上的需求,需要学习一些编程.(当然作为男朋友,是很有义务帮女朋友解决问题的.) 教他写程序的时候,如果先秀一下这行代码, ...
- python 自动发微博_Python 教你自动发微博,每日一句英语
作者:周萝卜 最近在研究用 Python 来制作各个类别的机器人,今天先来分享一个自动发布新浪微博的机器人. 基本思路 其实要实现一个简单的自动发布微博机器人还是不难的,只需要每天按时找好要发布的素材 ...
- 用python画太阳花原理_Python——教你画朵太阳花
用python中的turtle函数画个太阳花,有以下几个步骤 1.首先,我们在开始中找到Python语言的IDLE软件脚本 2.然后出现该软件界面,如图,点击上面的Eile 3.然后在栏目中点击New ...
- python 获取方法名_python 动态获取当前运行的类名和函数名的方法
一.使用内置方法和修饰器方法获取类名.函数名 python中获取函数名的情况分为内部.外部,从外部的情况好获取,使用指向函数的对象,然后用__name__属性 复制代码代码如下: def a():pa ...
最新文章
- union all与空字段的一种用法
- 记录一下python绘制地图
- MFC最小程序(不使用应用程序向导)
- Qt Creator预览版
- 中blur函数_Comonad在图像处理中的应用
- python的数据库应用,Python数据库应用
- 使用oracle客户端与PLSQL连接ORACLE数据库软件安装过程
- UVA 1048	 Low Cost Air Travel 最短路
- 递归系列——递归树与函数记忆化
- JavaWeb框架学习文章索引
- 什么是一级域名、二级域名?
- Unity打包安卓出现报错 Exception: Unknown CPU architecture for libraryxxx.a
- 联想拯救者 独显模式下亮度无法调节 解决方法记录
- ExcelJS 导入导出excel带下拉框筛选数据
- 牛客网:智力题+判断推理+数量关系(1)
- HTTPS背后的加密算法
- ROS 重名问题解决
- Spring内部方法性能监控器
- 手游外挂入侵(三)外挂接口服务提供
- Maven 加入高德地图,类推百度地图