查看原文
其他

用 python 实现蚂蚁庄园自动拍球!

lamyoung 白玉无冰 2022-06-10

解放双手,享受 python 带来的快感!

之前写了一篇蚂蚁庄园星星球的实现,有小伙伴留言要自动拍球。好吧!作为懒人,这是个强烈的需求!那么就行动起来吧!


   配置环境     

硬件设备:

电脑(本文以mac系统为例) + 打开开发者选项USB调试的安卓手机(一般在设置>>查看本机>>点击版本号多次) + 可以传输数据的数据线。


软件环境:

电脑上 从官网下载安装 Android Studio ,并在 SDK manager 里安装手机对应版本的 sdk 。

在电脑上添加环境变量。

vim ~/.bash_profile
ANDROID_HOME=/Users/lamyoung/Library/Android/sdkPATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH:.export PATH

开启了usb调试的安卓手机连接电脑,确保执行 adb devices 可以看到连接上的设备。

接着就是安装 python3 中的 uiautomator2 库。

pip3 install -U uiautomator2 --timeout 10000

安装包含httprpc服务的apk到手机。

python3 -m uiautomator2 init

检查有没配置成功,进入 python3 解释器,输入以下代码,看到结果说明配置成功!


   执行代码     

工欲善其事必先利其器,以上配置好了就可以开始写 python3 代码啦。


经多次测试,小球最终都会在左下角区域。所以我们只需要让它不停的在该区域点击就可以了。参考代码如下。

import uiautomator2 as u2
d = u2.connect()window_size = d.window_size()window_w = window_size[0];window_h = window_size[1];
count = 0while count<10000: count = count+1 d.click(window_w*0.62,window_h*0.89)

在手机点击支付宝,进入蚂蚁庄园星星球界面。执行代码就可以坐等它打球啦。打完结束后按 ctrl + z 退出脚本。


   小结     

整个工程主要在配置环境。uiautomator2 这个库主要是用于自动化测试,还有许多其他功能,本文只用到了模拟点击。


本来打算用 weditor 分析 xml 获取球节点,结果发现整个游戏是绑在ali的一个 webview 上,没能成功获取 。如果你有其他好方法欢迎留言分享。




爬取app内的数据!mitmproxy入门教程!

用 python 实现视频加入水印,压缩并转成 gif !

动态爬取论坛列表!python爬虫入门实战(四)!

不会正则怎么办?xpath分分钟搞定!

python爬虫入门实战(二)!多线程爬虫!

python爬虫入门实战!爬取博客文章标题和链接!

拇指射箭  !  Cocos Creator 3D !

蚂蚁庄园运动会星星球!3D项目入门实战!

微信云开发之排行榜的实现

本文仅供个人学习交流使用,请勿用于其他用途


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存