爬前准备工作

在开始安装Appium之前,你要先知道Appium是做什么的?Appium 是一个自动化测试开源工具,看到没,做测试用的,它有点类似Selenium,可以自动操作APP实现一系列的操作。

标记重点,可以使用python对Appium编写脚本,实现对App的抓取。

今天就给你写一个100%叫你可以运行起来的入门实例。

下载地址

用稳定的最新版本即可。

https://github.com/appium/appium-desktop/releases/tag/v1.10.0

下载之后,双击exe安装即可



出现如下界面,表示安装成功,先不要进行其他的操作,点击下面的 Edit Configurations



注意,在弹出的窗口中,需要配置的ANDROID_HOMEJAVA_HOME 这两个路径都需要安装Android Studio才可以配置好。接下来就去下载安装它吧。

Android Studio的下载、安装与配置

这个是开发Android应用的IDE软件,比较大,安装过程中可能容易出现问题,多百度,多搜狗,多谷歌,多BIng。

在这之前,我建议你先把JAVA的SDK安装上。

下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

安装的目标是实现在CMD窗口,输入java,出现如下效果,记住,你如果没有实现这个步骤,尽量不要往下操作。

百度关键字为:JAVA环境的安装,最难的地方是需要你配置JAVA_HOME环境变量

下载地址:http://www.android-studio.org/index.php 下载安装,没啥好说的,遇到错误,解决就好了,出现如下界面表示安装成功,记住,这个页面不要动,你还有操作要完成。





打开页面之后,4.0以后的所有SDK都勾选上吧,好了,这样子配置的就差不多了。

尝试连接夜神模拟器

重要步骤来了哦~我们要使用Appium操作夜神模拟器里面的APP。

这个地方,你需要确定一下夜神模拟器的adb 和 Android_Studio的adb版本是否一致!

默认环境下,使用 adb version 即可查看到Android SDK的版本为 1.0.40

C:\Users\你的用户名>adb version
Android Debug Bridge version 1.0.40
Version 4986621
Installed as C:\Users\你的用户名\AppData\Local\Android\Sdk\platform-tools\adb.exe

进入夜神模拟器安装路径 ,输入adb version 查看到版本也是1.0.40 注意下面的路径已经改变了

D:\Program Files\Nox\bin
λ adb version
Android Debug Bridge version 1.0.40
Version 4986621
Installed as D:\Program Files\Nox\bin\adb.exe

如果两个版本不一致,你需要进行如下的修改

一般出现的错误如下

adb server version(31) doesn’t match this client (36);killing…

解决办法:

  • a、关掉夜神模拟器。同时去任务管理器里看下,adb.exe以及nox_adb.exe这2个进程有没有在运行?有的话就结束掉。
  • b、找到SDK的目录和夜神模拟器的目录,将SDK目录(C:\Users\你的用户名\AppData\Local\Android\Sdk\platform-tools)下的adb.exe文件,复制到夜神模拟器的目录(D:\Program Files\Nox\bin\)下,将夜神模拟器目录下原本的adb.exe和nox_adb.exe修改文件名为adb_bak.exe和nox_adb_bak.exe,将从SDK目录复制过来的adb.exe放在夜神目录下,同时复制一份改名为nox_adb.exe。

配置上述内容完毕之后,就可以开始测试了。

启动夜神模拟器设备

打开CMD,进入命令窗口,进入到夜神模拟器根目录。

下面的命令在运行之后,请确保夜神模拟器软件出于**关闭**状态

D:\Program Files\Nox\bin
λ nox_adb.exe connect 127.0.0.1:62001
already connected to 127.0.0.1:62001

出现 already connected to 127.0.0.1:62001

这个地方扩展一下

各模拟器adb连接端口

模拟器名称 端口号
夜神安卓模拟器 62001
雷电安卓模拟器 5555
网易MuMu(安卓模拟器) 7555
逍遥安卓模拟器 21503
BlueStacks(蓝叠安卓模拟器) 5555
天天安卓模拟器 5037
安卓模拟器大师 54001
Genymotion 5555

可以打开夜神模拟器了

命令行输入下面的命令,查看是否有设备连接

D:\Program Files\Nox\bin
λ adb devices
List of devices attached
* daemon not running; starting now at tcp:5037
* daemon started successfully
127.0.0.1:62001 device

启动Appium

到现在为止,一些关键的配置都进行完毕了,你需要打开Appium了



点击右上角的查找,出现配置页面



我们需要配置如下内容,appPackageappActivity 获取方式参照图片之后

{
"platformName": "Android", # 声明是ios还是Android系统
"platformVersion":"4.4.2", # Android内核版本号,可以在夜神模拟器设置中查看
"deviceName": "OPPO R11", # 这个地方我们可以写 127.0.0.1:62001
"appPackage": "com.taobao.taobao", # apk的包名
"appActivity": "com.taobao.tao.welcome.Welcome" # apk的launcherActivity
}

获取apk包名和launcherActivity

将下载好的APK包,放置到夜神模拟器根目录

 aapt dump badging 51job.apk

得到我们的两个参数,完美~



配置Appium

按照上述参数配置完毕之后,我们就可以进行一些基本操作了。



点击start session 可以看到夜神模拟器已经完美的运行起来了,哈哈哈

最后提醒

  1. 你需要熟悉android的一些环境变量的配置
  2. 有可能你安装java的环境会失败,百度一下文章很多的,解决方案也很多的
  3. 下载android SDK的时候,卡住了,一般是网络原因
  4. 夜神模拟器启动不了,注意查看adb version的相关配置
  5. 夜神模拟器卡死,重新模拟器就好了

Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫的更多相关文章

  1. Python爬虫入门教程 1-100 CentOS环境安装

    简介 你好,当你打开这个文档的时候,我知道,你想要的是什么! Python爬虫,如何快速的学会Python爬虫,是你最期待的事情,可是这个事情应该没有想象中的那么容易,况且你的编程底子还不一定好,这套 ...

  2. Python爬虫入门教程 44-100 Charles的安装与使用-手机APP爬虫部分

    1. 第二款抓包工具Charles安装与使用 Charles和Fiddler一样,也是一款抓包工具,比Fiddler界面更加清晰,支持多平台 1.1 官方网址 https://www.charlesp ...

  3. Python爬虫入门教程 43-100 百思不得姐APP数据-手机APP爬虫部分

    1. Python爬虫入门教程 爬取背景 2019年1月10日深夜,打开了百思不得姐APP,想了一下是否可以爬呢?不自觉的安装到了夜神模拟器里面.这个APP还是比较有名和有意思的. 下面是百思不得姐的 ...

  4. Python爬虫入门教程 48-100 使用mitmdump抓取手机惠农APP-手机APP爬虫部分

    1. 爬取前的分析 mitmdump是mitmproxy的命令行接口,比Fiddler.Charles等工具方便的地方是它可以对接Python脚本. 有了它我们可以不用手动截获和分析HTTP请求和响应 ...

  5. Python爬虫入门教程 37-100 云沃客项目外包网数据爬虫 scrapy

    爬前叨叨 2019年开始了,今年计划写一整年的博客呢~,第一篇博客写一下 一个外包网站的爬虫,万一你从这个外包网站弄点外快呢,呵呵哒 数据分析 官方网址为 https://www.clouderwor ...

  6. Python爬虫入门教程 36-100 酷安网全站应用爬虫 scrapy

    爬前叨叨 2018年就要结束了,还有4天,就要开始写2019年的教程了,没啥感动的,一年就这么过去了,今天要爬取一个网站叫做酷安,是一个应用商店,大家可以尝试从手机APP爬取,不过爬取APP的博客,我 ...

  7. 2019-03-22 Python Scrapy 入门教程 笔记

    Python Scrapy 入门教程 入门教程笔记: # 创建mySpider scrapy startproject mySpider # 创建itcast.py cd C:\Users\theDa ...

  8. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  9. Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE

    Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...

  10. 孤荷凌寒自学python第八十五天配置selenium并进行模拟浏览器操作1

    孤荷凌寒自学python第八十五天配置selenium并进行模拟浏览器操作1 (完整学习过程屏幕记录视频地址在文末) 要模拟进行浏览器操作,只用requests是不行的,因此今天了解到有专门的解决方案 ...

随机推荐

  1. DDD实战进阶第一波(十一):开发一般业务的大健康行业直销系统(实现经销商代注册用例与登录令牌分发)

    前两篇文章主要实现了经销商代注册的仓储与领域逻辑.经销商登录的仓储与相关逻辑,这篇文章主要讲述经销商代注册的用例与经销商登录的查询功能. 一.经销商代注册用例 在经销商代注册用例中,我们需要传递经销商 ...

  2. Django—models相关操作

    一.在django后台admin管理页面添加自己增加的表结构 通过终端命令:python3 manage.py makemigrations, python3 manage.py migrate 我们 ...

  3. BZOJ_2561_最小生成树_最小割

    BZOJ_2561_最小生成树_最小割 题意: 给定一个边带正权的连通无向图G=(V,E),其中N=|V|,M=|E|,N个点从1到N依次编号,给定三个正整数u,v,和L (u≠v),假设现在加入一条 ...

  4. BZOJ_3365_[Usaco2004 Feb]Distance Statistics 路程统计&&POJ_1741_Tree_点分治

    BZOJ_3365_[Usaco2004 Feb]Distance Statistics 路程统计&&POJ_1741_Tree_点分治 Description     在得知了自己农 ...

  5. 如何在ST官网下载STM32固件库

    1.首先要注册一个ST账号,下载的时候需要. 2.找到工具与软件 3.进去之后选"产品列表" 4.在产品列表里选STM32微控制器软件,直接点下图标号2,不要点左边的加号 5.进去 ...

  6. 死磕 java集合之DelayQueue源码分析

    问题 (1)DelayQueue是阻塞队列吗? (2)DelayQueue的实现方式? (3)DelayQueue主要用于什么场景? 简介 DelayQueue是java并发包下的延时阻塞队列,常用于 ...

  7. 基于滴答清单 Web 开发的 PC 客户端

    基于滴答清单 Web 开发的 PC 客户端 关于「滴答清单」 滴答清单是一款不可多得的 GTD 效率工具,它有着清晰明了的界面设计.恰到好处的功能设置.稳定的同步服务,如果你还缺少一款简洁而有效的 G ...

  8. .net core 并发下的线程安全问题

    抱歉,其实内容并不如题!!!真正的题目应该为<.net core 并发下由于注入模式引起的线程安全问题> 背景(写测试demo所出现的异常,供大家学习与拍砖): .net core web ...

  9. [译]PEP 342--增强型生成器:协程

    PEP原文 : https://www.python.org/dev/peps/pep-0342/ PEP标题: Coroutines via Enhanced Generators PEP作者: G ...

  10. 分享一个.NET平台开源免费跨平台的大数据分析框架.NET for Apache Spark

    今天早上六点半左右微信群里就看到张队发的关于.NET Spark大数据的链接https://devblogs.microsoft.com/dotnet/introducing-net-for-apac ...