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)
    
  • 相關資料


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM