基於 python + WebDriverAgent 的「跳一跳」小程序高分教程

2017年12月28日,微信放出了 6.6.1 版本,在微信首頁二樓(下拉出現)位置重磅推出了「跳一跳」小程序,瞬間刷爆朋友圈。html


在你們忙於遊戲的時候,有人獨闢蹊徑基於 python + WebDriverAgent 實現了經過 PC 遠程操控手機「跳一跳」小程序小人自動跳動,將分數刷到了使人髮指的地步,悄悄佔領朋友圈第一。python

目前已經有比較火的幾篇文章詳細講如何實現上述操做,可是或多或少存在描述不夠詳細、參數設置只在某些機型上表現較好的問題。這也形成我在根據這些教程實現過程當中踩了幾個小坑。本文基於 Macbook + iphone 6s plus 來說一下如何實現上述過程,也將踩過的坑記錄下。git

環境準備

安裝 python3

下載並點擊安裝。下載地址:https://www.python.org/downlo...
在終端 terminal 中輸入以下命令,查看是否安裝 python3 成功。github

~ python3 -V
Python 3.6.4

建立 python3 虛擬環境

文檔地址:https://docs.python.org/3/tut...
方法以下:npm

~ python3 -m venv tutorial-env
~ source tutorial-env/bin/activate
(tutorial-env) ➜  ~

安裝 pip

安裝 python 包管理工具 pip。
文檔地址:https://pip.pypa.io/en/latest...
方法以下:json

(tutorial-env) ➜  ~ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
(tutorial-env) ➜  ~ python get-pip.py

安裝 xcode

經過 appstore 安裝bootstrap

安裝 WebDriverAgent

xcode,儘可能新版。儘可能升級Xcode到最新版,保持iPhone的版本大於9.3。小程序

從github上下載代碼xcode

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的地址是http://localhost:8100/inspector, inspector是用來查看UI的圖層,方便寫測試腳本用的

使用 python 控制 iphone 自動跳一跳

獲取 python 跳一跳代碼

倉庫地址:https://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

最終效果

參考資料

  1. 教你用 Python 來玩微信跳一跳
  2. 微信跳一跳 mac + iphone 圖文教程
  3. ATX 文檔 - iOS 真機如何安裝 WebDriverAgent
相關文章
相關標籤/搜索