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自动化工具的使用了,如有后续工作再进行总结相关代码开发经验。
来源:oschina
链接:https://my.oschina.net/u/4374544/blog/4318204