JAVA:
- 系統環境中必須有環境變量;
- 環境變量的名字必須爲:JAVA_HOME;
- 再將其bin路徑以及jre的bin路徑添加到path環境;
注:不太熟悉環境變量設置的請自行百度或留言交流
Android SDK:
下載地址:
https://www.androiddevtools.cn/
下載並安裝:
安裝好之後會啓動 Android SDK Manager:
https://www.jianshu.com/p/d25a95e3cc1e
參考上面的安裝方式;我採用的在線安裝,也挺快的,沒有任何問題(只需要安裝默認勾選的前兩項加上自己Android對應的版本,我用的夜神模擬器是5.1.1);
安裝完成之後,配置環境變量:
變量名不能更改(Appnium默認識別的名字):
在path下添加:
注:過程不太詳細,可留言交流
安卓模擬器:
下載地址:
鏈接:https://pan.baidu.com/s/1nNQvipKnzw4St4K2kFlSrQ
提取碼:9te8
其他方式:
注:不太熟悉安裝使用的請自行百度或留言交流
Appium:
下載地址:
鏈接:https://pan.baidu.com/s/11K8W_f4BRE4Ah_ootk1yMA
提取碼:5eor
安裝打開頁面:
直接啓動無需更改,啓動後的頁面如下:
點擊File中的New Session Window...稍等片刻頁面如下:
下面需要配置Desired Capabilities, 記得另存一下,下次方便登陸:
{ "automationName": "appium", "platformName": "Android", "platformVersion": "5.1.1", "deviceName": "127.0.0.1:52001 device", # 52001爲夜神模擬器的端口 "appPackage": "com.vphone.launcher", "appActivity": ".Launcher", "autoAcceptAlerts": "true", "app": "C:\\Users\\sunzhiwen\\Desktop\\niwodai_re\\com.finace.market.apk" # 結合自己想要抓取的APK包 }
如何獲取appPackage和appActivity:參見https://www.jianshu.com/p/87ba984ebc3d
如何查詢夜神模擬器的啓動端口:參見https://www.jianshu.com/p/c21072fc158e
啓動流程:
Android SDK:
E:\android_sdk\platform-tools(Android SDK的路徑,結合自己的修改)下有adb.exe;
夜神模擬器:
E:\yeshen\Nox\bin(夜神的安裝路徑,結合自己的修改)下有adb.exe和nox_adb.exe;
注:兩者要保持一致,可能版本不一致,建議將Android SDK的直接拷貝過來,改名爲nox_adb.exe;而夜神下adb.exe不用修改。
連接模擬器:
目錄行中直接輸入cmd進入命令行模式:
模擬器啓動之後:
啓動Appium並進行連接:
注意每次重新啓動夜神模擬器之後:appPackage和appActivity都會發生變化,所以要進行Desired Capilities修改;
修改成當前啓動模擬器的最新狀態之後,記得保存一下。然後Start Session,稍等片刻;
服務狀態正在啓動:
啓動成功的狀態:
然後就可以進行相應的自動化或者標籤信息提取工作了;
注:啓動Appium的過程,可能會有不同的錯誤,請耐心看報錯信息,或留言溝通;
Python開發包:
pip install selenium
pip install Appium-Python-Client
連接示例:
from appium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
DRIVER_SERVER = 'http://127.0.0.1:4723/wd/hub'
desired_caps = {
"platformName": "Android",
"platformVersion": "5.1.1",
"deviceName": "127.0.0.1:52001",
"appPackage": "com.vphone.launcher",
"appActivity": ".Launcher",
"app": "C:\\Users\\sunzhiwen\\Desktop\\niwodai_re\\com.finace.market.apk"
}
driver = webdriver.Remote(DRIVER_SERVER, desired_caps)
wait = WebDriverWait(driver, 300)
接下來就要自己好好學習類似selenium的Appium自動化工具的使用了,如有後續工作再進行總結相關代碼開發經驗。