Android端自动化脚本工具:Auto.js和Appium
引言
- 寒假期间,朋友让我一起和他在淘宝的天猫农场上一起种水果,说是等熟了,可以一分钱买好多水果(表示昨天水果刚邮回来,比较香)
- 我具体看了看怎样种水果,逛指定商品页面15秒,逛一逛淘宝人生以及签个到等。倒是不费劲,就是有些麻烦。于是想借此机会搞一搞Android端自动化脚本。
- 目前入手的由两个,一个是Auto.js,另一个是Appium
- 下面就简要介绍一下使用两者的感受
Auto.js
- Auto.js是可以手机端运行的,无需Root手机自动化脚本开源工具,主要开发语言为JavaScript,目前只支持Android平台。
- 但是由于该App大多用于黑产,作者目前已经停止更新,该App的下载,也只是一些民间流传的版本。勉强能用。
- 之前是由于淘宝领喵币,接触到了Auto.js,而后就一发不可收。
- 优点:
- 手机端可以运行,无需连接电脑,甚至可以在手机上直接编程运行
- 无需Root,相关说明文档清晰,对于新手比较友好
- 相比于Appium, Auto.js定位手机界面元素更加详细,清楚
- 缺点:
- 作者已经停止更新该软件,所以民间流传的版本,有较多Bug
- 运行代码不稳定,有时时灵时不灵,而且对于各个版本的手机兼容性较差
- 目前知道的相关稳定性:
- 华为荣耀手机如果长时间运行Auto.js,程序自动停止,重启后才能运行
- vivo x9运行相关程序,会出现点击不灵问题,实验发现用流量比连接Wifi更稳定,不灵问题较少
- 实例→启动微信:
lauchApp("微信");
- 相关资料:
Appium
- 好友推荐,抱着试一试的态度,入门一下。目前只是简单入门
- 优点:
- 开源、跨平台
- 支持Selenium WebDriver支持的所有语言,如Java、Php、Python等。
- 稳定
- 缺点:
- 开始配置环境较为复杂,往往让人望而却步
- 定位文本不太准确(相比于Auto.js),有些元素不能有效定位(定位工具:Appium Inspecter或者Ui Automator Vierwer)
- 实例(前提是你已经配置好所有环境)→启动微信:
import time from selenium import webdriver def PATH(p): return os.path.abspath(os.path.join(os.path.dirname(__file__), p)) # 启动微信 desired_caps = { "platformName": "Android", "platformVersion": "8.1.0", "deviceName": "vivo_X9i", "appPackage": "com.tencent.mm", "appActivity": "com.tencent.mm.ui.LauncherUI", "noReset": True, "fullReset": False, } driver = webdriver.Remote("http://localhost:4723/wd/hub", desired_caps) time.sleep(5)
- 相关资料:
-----------------------------------------
你驻足于春色中,于那独一无二的春色之中。