关于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抓取京东商城手机列表url实例代码
Dec 18 Python
python中os操作文件及文件路径实例汇总
Jan 15 Python
Python中使用dom模块生成XML文件示例
Apr 05 Python
python实现多线程网页下载器
Apr 15 Python
django1.11.1 models 数据库同步方法
May 30 Python
Django-Rest-Framework 权限管理源码浅析(小结)
Nov 12 Python
python进行TCP端口扫描的实现
Dec 21 Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
Feb 26 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
Mar 14 Python
Python socket模块实现的udp通信功能示例
Apr 10 Python
python在新的图片窗口显示图片(图像)的方法
Jul 11 Python
Python探索生命起源 matplotlib细胞自动机动画演示
Apr 21 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
攻克CakePHP系列三 表单数据增删改
2008/10/22 PHP
Smarty变量调节器失效的解决办法
2014/08/20 PHP
PHP+Mysql基于事务处理实现转账功能的方法
2015/07/08 PHP
php实现的证件照换底色功能示例【人像抠图/换背景图】
2020/05/29 PHP
javascript里的条件判断
2007/02/27 Javascript
asp.net和asp下ACCESS的参数化查询
2008/06/11 Javascript
Confirmer JQuery确认对话框组件
2010/06/09 Javascript
关于javascript中的typeof和instanceof介绍
2012/12/04 Javascript
sencha touch 模仿tabpanel导航栏TabBar的实例代码
2013/10/24 Javascript
使用vue-router为每个路由配置各自的title
2018/07/30 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
Vue前后端不同端口的实现方法
2018/09/19 Javascript
js前端面试之同步与异步问题详解
2019/04/03 Javascript
JS绘图Flot应用图形绘制异常解决方案
2020/10/16 Javascript
vue element-ul实现展开和收起功能的实例代码
2020/11/25 Vue.js
[54:08]LGD女子刀塔学院 DOTA2炼金术士教学
2014/01/09 DOTA
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
Python多层嵌套list的递归处理方法(推荐)
2016/06/08 Python
总结网络IO模型与select模型的Python实例讲解
2016/06/27 Python
纯用NumPy实现神经网络的示例代码
2018/10/24 Python
python实现复制文件到指定目录
2019/10/16 Python
python paramiko远程服务器终端操作过程解析
2019/12/14 Python
Python+opencv+pyaudio实现带声音屏幕录制
2019/12/23 Python
python自动从arxiv下载paper的示例代码
2020/12/05 Python
使用numpngw和matplotlib生成png动画的示例代码
2021/01/24 Python
如何使用localstorage代替cookie实现跨域共享数据问题
2018/04/18 HTML / CSS
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
西安当代医院管理研究院笔试题
2015/12/11 面试题
超市开业庆典活动策划方案
2014/09/15 职场文书
2014年电厂个人工作总结
2014/11/27 职场文书
会议欢迎词
2015/01/23 职场文书
2015年员工工作总结范文
2015/04/08 职场文书
高中数学课堂教学反思
2016/02/18 职场文书
领导激励员工的演讲稿,各种会上用得到,建议收藏
2019/08/13 职场文书
Spring Cache和EhCache实现缓存管理方式
2021/06/15 Java/Android
《帝国时代4》赛季预告 新增内容编译器可创造地图
2022/04/03 其他游戏