关于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实现简单的TCP代理服务器
Oct 08 Python
在Python程序中操作文件之isatty()方法的使用教程
May 24 Python
Python中Django框架下的staticfiles使用简介
May 30 Python
Python selenium 三种等待方式详解(必会)
Sep 15 Python
python模块简介之有序字典(OrderedDict)
Dec 01 Python
Python实现按逗号分隔列表的方法
Oct 23 Python
3分钟学会一个Python小技巧
Nov 23 Python
matlab灰度图像调整及imadjust函数的用法详解
Feb 27 Python
python+gdal+遥感图像拼接(mosaic)的实例
Mar 10 Python
基于Python的Jenkins的二次开发操作
May 12 Python
基于python实现地址和经纬度转换
May 19 Python
python ETL工具 pyetl
Jun 07 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
一个简单的MySQL数据浏览器
2006/10/09 PHP
PHP中extract()函数的妙用分析
2012/07/11 PHP
PHP删除指定目录中的所有目录及文件的方法
2015/02/26 PHP
php简单socket服务器客户端代码实例
2015/05/18 PHP
详解WordPress中的头像缓存和代理中的缓存更新方法
2016/03/01 PHP
PHP实现的多维数组排序算法分析
2018/02/10 PHP
thinkphp5实现微信扫码支付
2019/12/23 PHP
jscript之Open an Excel Spreadsheet
2007/06/13 Javascript
Ajax 数据请求的简单分析
2011/04/05 Javascript
javasciprt下jquery函数$.post执行无响应的解决方法
2014/03/13 Javascript
jQuery实现感应鼠标动画效果自动伸长的输入框实例
2015/02/24 Javascript
jquery预加载图片的方法
2015/05/27 Javascript
简单实现nodejs上传功能
2017/01/14 NodeJs
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
在vue项目中,使用axios跨域处理
2018/03/07 Javascript
在小程序开发中使用npm的方法
2018/10/17 Javascript
vue中promise的使用及异步请求数据的方法
2018/11/08 Javascript
微信小程序云开发如何使用npm安装依赖
2019/05/18 Javascript
JavaScript常用工具函数大全
2020/05/06 Javascript
easyUI使用分页过滤器对数据进行分页操作实例分析
2020/06/01 Javascript
pymssql数据库操作MSSQL2005实例分析
2015/05/25 Python
Python实现数据库并行读取和写入实例
2017/06/09 Python
Python编程实现的简单Web服务器示例
2017/06/22 Python
pandas数据筛选和csv操作的实现方法
2019/07/02 Python
python实现点击按钮修改数据的方法
2019/07/17 Python
Django 迁移、操作数据库的方法
2019/08/02 Python
Python操作Sqlite正确实现方法解析
2020/02/05 Python
Python基于wordcloud及jieba实现中国地图词云图
2020/06/09 Python
html5 乒乓球(碰撞检测)实例二
2013/07/25 HTML / CSS
Canvas与Image互相转换示例代码
2013/08/09 HTML / CSS
Hotels.com越南:酒店预订
2019/10/29 全球购物
父亲节活动策划方案
2014/08/24 职场文书
警察群众路线对照检查材料思想汇报
2014/10/01 职场文书
幼儿园教师自我评价
2015/03/04 职场文书
php 解析非标准json、非规范json
2021/04/01 PHP
原生JS封装vue Tab切换效果
2021/04/28 Vue.js