想必大家都玩過這個游戲吧,在微信首頁二樓(下拉出現)位置重磅推出了“跳一跳”小程式,瞬間刷爆朋友圈,


在大家忙于游戲的時候,有人獨辟蹊徑基于 python + WebDriverAgent 實作了通過 PC 遠程操控手機“跳一跳”小程式小人自動跳動,將分數刷到了令人發指的地步,悄悄占領朋友圈第一,

目前已經有比較火的幾篇文章詳細講如何實作上述操作,但是或多或少存在描述不夠詳細、引數設定只在某些機型上表現較好的問題,這也造成我在根據這些教程實作程序中踩了幾個小坑,本文基于 Macbook + iphone 6s plus 來講一下如何實作上述程序,也將踩過的坑記錄下,
環境準備
安裝 python3
下載并點擊安裝,下載地址:www.python.org/downloads/m… 在終端 terminal 中輸入如下命令,查看是否安裝 python3 成功,
~ python3 -V
Python 3.6.4
復制代碼
創建 python3 虛擬環境
檔案地址:docs.python.org/3/tutorial/… 方法如下:
~ python3 -m venv tutorial-env
~ source tutorial-env/bin/activate
(tutorial-env) ? ~
復制代碼
安裝 pip
安裝 python 包管理工具 pip, 檔案地址:pip.pypa.io/en/latest/i… 方法如下:
(tutorial-env) ? ~ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
(tutorial-env) ? ~ python get-pip.py
復制代碼
安裝 xcode
通過 appstore 安裝
安裝 WebDriverAgent
xcode,盡量新版,盡量升級Xcode到最新版,保持iPhone的版本大于9.3,
從github上下載代碼
git clone https://github.com/facebook/WebDriverAgent
復制代碼
安裝 carthage
brew install carthage
復制代碼
運行初始化腳本
./Scripts/bootstrap.sh
復制代碼
該腳本會使用Carthage下載所有的依賴,使用npm打包回應的js檔案
執行完成后,直接雙擊打開WebDriverAgent.xcodeproj這個檔案,
設定證書
設定證書簽名,Team 一欄勾選個人賬號即可,

接著在TARGETS里面選中WebDriverAgentRunner,用同樣的方法設定好證書

重命名WebDriverAgent的BundleID,避免重名,

接著在TARGETS里面選中WebDriverAgentRunner,用同樣的方法重命名,

運行和測驗
Xcode - Product - Scheme 中選擇 WebDriverAgentRunner,

將 iphone 通過資料線連接到 macbook 上, 在 Xcode - Product - Destination 中選擇資料線連接的 iphone ,

運行 Xcode - Product - Test

埠轉發
~ brew install libimobiledevice
~ iproxy 8100 8100
復制代碼
使用iproxy --help 可以查到更具體的用法, 這時通過訪問http://localhost:8100/status確認WDA是否運行成功,
而inspector的地址是https://shimo.im/docs/CHrj8wxkWTdjhRYG/ 《python超全資料庫》,可復制鏈接后用石墨檔案 App 或小程式打開, inspector是用來查看UI的圖層,方便寫測驗腳本用的

使用 python 控制 iphone 自動跳一跳
獲取 python 跳一跳代碼
倉庫地址:github.com/korbinzhao/…
git clone git@github.com:korbinzhao/wechat_jump_game.git
復制代碼
安裝 facebook-wda
(tutorial-env) ? ~ pip3 install --pre facebook-wda
復制代碼
安裝專案依賴
(tutorial-env) ? wechat_jump_game git:(master) ? pip3 install -r requirements.txt
復制代碼
拷貝 ./config/iPhone 目錄下對應的設備組態檔,重命名并替換到 ./config.json

在手機中打開小程式界面,運行 python 腳本

(tutorial-env) ? wechat_jump_game git:(master) ? python3 wechat_jump_auto_iOS.py
復制代碼
最終效果

喜歡的可以關注小胖子哦~ 需要相關資料的可以通過掃一掃領取相關python資料,入門到實戰
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/294948.html
標籤:python
