关于Python3爬虫利器Appium的安装步骤


Posted in Python onJuly 29, 2020

Appium是移动端的自动化测试工具,类似于前面所说的Selenium,利用它可以驱动Android、iOS等设备完成自动化测试,比如模拟点击、滑动、输入等操作,其官方网站为:http://appium.io/。本节中,我们就来了解一下Appium的安装方式。

1. 相关链接

GitHub:https://github.com/appium/appium

官方网站:http://appium.io

官方文档:http://appium.io/introduction.html

下载链接:https://github.com/appium/appium-desktop/releases

Python Client:https://github.com/appium/python-client

2. 安装Appium

首先,需要安装Appium。Appium负责驱动移动端来完成一系列操作,对于iOS设备来说,它使用苹果的UIAutomation来实现驱动;对于Android来说,它使用UIAutomator和Selendroid来实现驱动。

同时Appium也相当于一个服务器,我们可以向它发送一些操作指令,它会根据不同的指令对移动设备进行驱动,以完成不同的动作。

安装Appium有两种方式,一种是直接下载安装包Appium Desktop来安装,另一种是通过Node.js来安装,下面我们介绍一下这两种安装方式。

Appium Desktop

Appium Desktop支持全平台的安装,我们直接从GitHub的Releases里面安装即可,链接为https://github.com/appium/appium-desktop/releases。目前的最新版本是1.1,下载页面如图1-71所示。

关于Python3爬虫利器Appium的安装步骤

图1-71 下载页面

Windows平台可以下载exe安装包appium-desktop-Setup-1.1.0.exe,Mac平台可以下载dmg安装包如appium-desktop-1.1.0.dmg,Linux平台可以选择下载源码,但是更推荐用Node.js安装方式。

安装完成后运行,看到的页面如图1-72所示。

关于Python3爬虫利器Appium的安装步骤

图1-72 运行页面

如果出现此页面,则证明安装成功。

Node.js

首先需要安装Node.js,具体的安装方式可以参见https://3water.com/article/140361.htm,安装完成之后就可以使用npm命令了。

接下来,使用npm命令全局安装Appium即可:

npm install -g appium

此时等待命令执行完成即可,这样就成功安装了Appium。

3. Android开发环境配置

如果我们要使用Android设备做App抓取的话,还需要下载和配置Android SDK,这里推荐直接安装Android Studio,其下载地址为https://developer.android.com/studio/index.html?hl=zh-cn。下载后直接安装即可。

然后,我们还需要下载Android SDK。直接打开首选项里面的Android SDK设置页面,勾选要安装的SDK版本,点击OK按钮即可下载和安装勾选的SDK版本,如图1-73所示。

关于Python3爬虫利器Appium的安装步骤

图1-73 Android SDK设置页面

另外,还需要配置一下环境变量,添加ANDROID_HOME为Android SDK所在路径,然后再添加SDK文件夹下的tools和platform-tools文件夹到PATH中。

更详细的配置可以参考Android Studio的官方文档:https://developer.android.com/studio/intro/index.html。

4. iOS开发环境

首先需要声明的是,Appium是一个做自动化测试的工具,用它来测试我们自己开发的App是完全没问题的,因为它携带的是开发证书(Development Certificate)。但如果我们想拿iOS设备来做数据爬取的话,那又是另外一回事了。一般情况下,我们做数据爬取都是使用现有的App,在iOS上一般都是通过App Store下载的,它携带的是分发证书(Distribution Certificate),而携带这种证书的应用都是禁止被测试的,所以只有获取ipa安装包再重新签名之后才可以被Appium测试,具体的方法这里不再展开阐述。

这里推荐直接使用Android来进行测试。如果你可以完成上述重签名操作,那么可以参考如下内容配置iOS开发环境。

Appium驱动iOS设备必须要在Mac下进行,Windows和Linux平台是无法完成的,所以下面介绍一下Mac平台的相关配置。

Mac平台需要的配置如下:

·macOS 10.12及更高版本

·XCode 8及更高版本

配置满足要求之后,执行如下命令即可配置开发依赖的一些库和工具:

xcode-select --install

这样iOS部分的开发环境就配置完成了,我们就可以用iOS模拟器来进行测试和数据抓取了。

如果想要用真机进行测试和数据抓取,还需要额外配置其他环境,具体可以参考https://github.com/appium/appium/blob/master/docs/en/appium-setup/real-devices-ios.md。

到此这篇关于关于Python3爬虫利器Appium的安装步骤的文章就介绍到这了,更多相关Python3爬虫Appium安装内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
浅谈Python 对象内存占用
Jul 15 Python
python3使用smtplib实现发送邮件功能
May 22 Python
python分割一个文本为多个文本的方法
Jul 22 Python
Python numpy数组转置与轴变换
Nov 15 Python
python多线程使用方法实例详解
Dec 30 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
Jan 08 Python
python3读取csv文件任意行列代码实例
Jan 13 Python
python实现同一局域网下传输图片
Mar 20 Python
使用matplotlib动态刷新指定曲线实例
Apr 23 Python
Spring http服务远程调用实现过程解析
Jun 11 Python
Python 抓取数据存储到Redis中的操作
Jul 16 Python
一文详述 Python 中的 property 语法
Sep 01 Python
Python3爬虫mitmproxy的安装步骤
Jul 29 #Python
Python使用jpype模块调用jar包过程解析
Jul 29 #Python
Python 防止死锁的方法
Jul 29 #Python
Python定义一个Actor任务
Jul 29 #Python
Python如何重新加载模块
Jul 29 #Python
Python加速程序运行的方法
Jul 29 #Python
如何在python中判断变量的类型
Jul 29 #Python
You might like
解析php中的escape函数
2013/06/29 PHP
PHP实现一维数组转二维数组的方法
2015/02/25 PHP
windows7配置Nginx+php+mysql的详细教程
2016/09/04 PHP
php如何实现不借助IDE快速定位行数或者方法定义的文件和位置
2017/01/17 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
20款超赞的jQuery插件 Web开发人员必备
2011/02/26 Javascript
多个表单中如何获得这个文件上传的网址实现js代码
2013/03/25 Javascript
JS控制阿拉伯数字转为中文大写示例代码
2013/09/04 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
javascript实时显示北京时间的方法
2015/03/12 Javascript
AngualrJS中每次$http请求时的一个遮罩层Directive
2016/01/26 Javascript
jQuery增加和删除表格项目及实现表格项目排序的方法
2016/05/30 Javascript
JS实现数字格式千分位相互转换方法
2016/08/01 Javascript
微信小程序 网络API Websocket详解
2016/11/09 Javascript
实例解析jQuery工具函数
2016/12/01 Javascript
angular-cli修改端口号【angular2】
2017/04/19 Javascript
vue.js父组件使用外部对象的方法示例
2017/04/25 Javascript
基于Angular 8和Bootstrap 4实现动态主题切换的示例代码
2020/02/11 Javascript
微信小程序仿抖音视频之整屏上下切换功能的实现代码
2020/05/24 Javascript
Django1.3添加app提示模块不存在的解决方法
2014/08/26 Python
python以环状形式组合排列图片并输出的方法
2015/03/17 Python
Fabric 应用案例
2016/08/28 Python
Python检测生僻字的实现方法
2016/10/23 Python
Python使用pyshp库读取shapefile信息的方法
2018/12/29 Python
python实现可变变量名方法详解
2019/07/01 Python
利用python Selenium实现自动登陆京东签到领金币功能
2019/10/31 Python
python计算Content-MD5并获取文件的Content-MD5值方式
2020/04/03 Python
Python操作Excel把数据分给sheet
2020/05/20 Python
python实现时间序列自相关图(acf)、偏自相关图(pacf)教程
2020/06/03 Python
Alba Moda瑞士网上商店:独家意大利时尚女装销售
2016/11/28 全球购物
Overload和Override的区别
2012/09/02 面试题
揠苗助长教学反思
2014/02/04 职场文书
幼儿园大班教学反思
2014/02/10 职场文书
大学生撤销处分思想汇报
2014/09/12 职场文书
初中英语教学反思范文
2016/02/15 职场文书
Angular CLI发布路径的配置项浅析
2021/03/29 Javascript