上一篇文章: Python3网络爬虫实战---八、APP爬取相关库的安装:MitmProxy的安装
下一篇文章:
Appium 是移动端的自动化测试工具,相似于前面所说的 Selenium,利用它咱们能够驱动 Android、iOS 等设备完成自动化测试,好比模拟点击、滑动、输入等操做,其官方网站为:http://appium.io/,本节来了解一下 Appium 的安装方式。html
首先咱们须要安装 Appium,Appium 负责驱动移动端来完成一系列操做,对 iOS 设备来讲,它使用苹果的 UIAutomation 来实现驱动,对于 Android 来讲,它使用 UiAutomator 和 Selendroid 来实现驱动。
同时 Appium 也至关于一个服务器,咱们能够向 Appium 发送一些操做指令,Appium 就会根据不一样的指令对移动设备进行驱动,完成不一样的动做。
安装 Appium 有两种方式,一种是直接下载安装包 Appium Desktop 来安装,另一种是经过 Node.js 来安装,下面咱们各自介绍一下两种安装方式。node
Appium Desktop 支持全平台的安装,咱们直接从 GitHub 的 Releases 里面安装便可,连接为:https://github.com/appium/app...。python
Windows 平台能够下载 exe 安装包如 appium-desktop-Setup-1.1.0.exe,Mac 平台能够下载 dmg 安装包如 appium-desktop-1.1.0.dmg,Linux 平台能够选择下载源码,可是更推荐用下文的 Node.js 安装方式。
安装完成以后运行以后页面如图 1-73 所示:android
图 1-73 运行页面
若是出现此页面则证实安装成功。ios
首先须要安装 Node.js,具体的安装方式能够参见:http://www.runoob.com/nodejs/...,安装完成以后就可使用 npm 命令了。
接下来使用 npm 命令全局安装 Appium 便可,命令以下:git
npm install -g appium
等待命令执行执行完成便可,这样就成功安装了 Appium。github
若是咱们要使用 Android 设备作 App 抓取的话,还须要下载和配置 Android SDK,在这里推荐直接安装 Android Studio,其下载地址为:https://developer.android.com...,下载以后直接安装便可。
完成以后咱们还须要下载 Android SDK,直接打开首选项里面的 Android SDK 设置页面,勾选要安装的 SDK 版本,点击肯定便可开始下载和安装勾选的 SDK 版本,如图 1-74 所示:npm
图 1-74 Android SDK 设置页面
另外还须要配置一下环境变量,添加 ANDROID_HOME 为 Android SDK 所在路径,而后再添加 SDK 文件夹下的 tools 和 platform-tools 文件夹到 PATH 中。
更详细的配置能够参考 Android Studio 的官方文档:https://developer.android.com...。segmentfault
首先须要声明的是,Appium 是一个作自动化测试的工具,用它来测试咱们本身开发的 App 是彻底没问题的,它携带的是开发者证书(Development Certificate)。但若是咱们想拿 iOS 设备来作数据爬取的话又是另一回事了,通常咱们作数据爬取都是使用现有的APP,在 iOS 上通常都是经过 App Store 下载的,它携带的是分发证书(Distribution Certificate),而携带这种证书的应用都是禁止被测试的,因此只有获取 ipa 安装包再从新签名以后才能够被 Appium 测试,具体的方法再也不展开阐述,如感兴趣能够搜索相关资料。
所以在这里推荐直接使用 Android 来进行测试,若是你能够完成上述操做重签名操做,那么能够参考以下内容配置 iOS 开发环境。
Appium 驱动 iOS 设备必需要在 Mac 下进行,Windows 和 Linux 是平台是没法完成的,下面只介绍一下 Mac 平台的相关配置。
Mac 平台须要的配置以下:xcode
XCode 8 及更高版本
配置知足要求以后执行以下命令便可配置开发依赖的一些库和工具:
xcode-select --install
这样 iOS 部分开发环境就配置完成了,咱们就能够用 iOS 模拟器来进行测试和数据抓取了。
若是想要用真机进行测试和数据抓取,还须要额外配置一下其余的环境,能够参考:https://github.com/appium/app...。
以上是 Appium 开发环境的搭建,在后文咱们会用它来抓取微信朋友圈的内容。