一、背景介绍
最近在采集微信公众号,需要模拟客户端,手机端测试了一段时间了,微信封的很严,公众号主页每天的请求次数限制只有300多次。所以要考虑多账号多终端采集。我先在mumu模拟器上测试多终端并行操控。测试成熟后再在物理终端运行。
二、.安装node.js & Appium
安装appium环境需要依赖Android开发环境,所以安装起来比较麻烦。
具体安装过程请见这里:
https://blog.csdn.net/qq_27648991/article/details/82930920
需要注意:
appium安装有两种方式,一种是通过下载桌面版得客户端应用程序安装,另外一种是通过nodejs安装,appium本质上是一个nodejs库,所以在安装好nodejs后通过nom安装。
npm install -g appium@版本号
此处下载需要翻墙
或者下载最新版本得cnpm
npm install -g cnpm --registry=https://registry.npm.taobao.org
# 安装appium最新版本
cnpm install -g appium --registry=https://registry.npm.taobao.org
# 选择版本号安装
cnpm install appium@版本号
三、链接mumu模拟器
1.让adb链接到虚拟机
准备好appium环境并下载好mumu模拟器后先要链接虚拟机。在控制台输入以下命令,让adb链接到虚拟机:
adb connect 127.0.0.1:7555
2.获取deviceName
在cmd控制台输入:adb devices -l
,查看目前连接的虚拟机设备信息,显示如下:
D:\work\微信采集>adb devices -l
List of devices attached
127.0.0.1:7555 device product:VTR-AL00 model:VTR_AL00 device:VTR-AL00 transport_id:12
3.获取appActivity
aapt dump badging *.apk | grep launchable-activity
方法有很多,这里再说一种简单快速有效的方法。
通过cmd命令,前提是先打开手机中你要获取包名的APP
adb shell
dumpsys activity | grep mFocusedActivity
结果如下图:
image.png
4.端口启动测试
服务先开起来
服务
打开一个新的对话窗口,填入以下信息:
{
"platformName": "Android",
"deviceName": "VTR_AL00",
"appPackage": "com.tencent.mm",
"appActivity": "ui.LauncherUI",
"unicodeKeyboard": false,
"noReset": true,
"autoGrantPermissions": true,
"automationName": "uiautomator1"
}
settings
点击开始会话
启动成功
同时模拟器上也有了一个Appium setting
image.png
网友评论