Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫

爬前准备工作

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

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

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

下载地址

用稳定的最新版本即可。
https://github.com/appium/appium-desktop/releases/tag/v1.10.0
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第1张图片

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

在这里插入图片描述
出现如下界面,表示安装成功,先不要进行其他的操作,点击下面的 Edit Configurations
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第2张图片
注意,在弹出的窗口中,需要配置的ANDROID_HOMEJAVA_HOME 这两个路径都需要安装Android Studio才可以配置好。接下来就去下载安装它吧。
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第3张图片

Android Studio的下载、安装与配置

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

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

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

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

百度关键字为:JAVA环境的安装,最难的地方是需要你配置JAVA_HOME环境变量
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第4张图片

下载地址:http://www.android-studio.org/index.php 下载安装,没啥好说的,遇到错误,解决就好了,出现如下界面表示安装成功,记住,这个页面不要动,你还有操作要完成。
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第5张图片
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第6张图片
打开页面之后,4.0以后的所有SDK都勾选上吧,好了,这样子配置的就差不多了。
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第7张图片

尝试连接夜神模拟器

重要步骤来了哦~我们要使用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了
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第8张图片
点击右上角的查找,出现配置页面
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第9张图片
我们需要配置如下内容,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
}

Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第10张图片

获取apk包名和launcherActivity

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

 aapt dump badging 51job.apk

得到我们的两个参数,完美~
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第11张图片
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第12张图片

配置Appium

按照上述参数配置完毕之后,我们就可以进行一些基本操作了。
Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第13张图片
点击start session 可以看到夜神模拟器已经完美的运行起来了,哈哈哈

最后提醒

  1. 你需要熟悉android的一些环境变量的配置
  2. 有可能你安装java的环境会失败,百度一下文章很多的,解决方案也很多的
  3. 下载android SDK的时候,卡住了,一般是网络原因
  4. 夜神模拟器启动不了,注意查看adb version的相关配置
  5. 夜神模拟器卡死,重新模拟器就好了
    Python爬虫入门教程 49-100 Appium安装+操作51JOB_APP(模拟手机操作之一)手机APP爬虫_第14张图片

你可能感兴趣的:(爬虫100例教程)