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

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

爬前准备工作

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

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

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

下载地址

用稳定的最新版本即可。
https://github.com/appium/appium-desktop/releases/tag/v1.10.0
image

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

image

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

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

Android Studio的下载、安装与配置

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

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

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

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

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

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

image

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

尝试连接夜神模拟器

重要步骤来了哦~我们要使用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你的用户名AppDataLocalAndroidSdkplatform-tools)下的adb.exe文件,复制到夜神模拟器的目录(D:Program FilesNoxbin)下,将夜神模拟器目录下原本的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了
image

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

我们需要配置如下内容,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
}

image

获取apk包名和launcherActivity

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

 aapt dump badging 51job.apk

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

image

配置Appium

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

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

最后提醒

  1. 你需要熟悉android的一些环境变量的配置
  2. 有可能你安装java的环境会失败,百度一下文章很多的,解决方案也很多的
  3. 下载android SDK的时候,卡住了,一般是网络原因
  4. 夜神模拟器启动不了,注意查看adb version的相关配置
  5. 夜神模拟器卡死,重新模拟器就好了
    image
相关实践学习
使用CLup和iSCSI共享盘快速体验PolarDB for PostgtreSQL
在Clup云管控平台中快速体验创建与管理在iSCSI共享盘上的PolarDB for PostgtreSQL。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
13天前
|
数据采集 存储 API
网络爬虫与数据采集:使用Python自动化获取网页数据
【4月更文挑战第12天】本文介绍了Python网络爬虫的基础知识,包括网络爬虫概念(请求网页、解析、存储数据和处理异常)和Python常用的爬虫库requests(发送HTTP请求)与BeautifulSoup(解析HTML)。通过基本流程示例展示了如何导入库、发送请求、解析网页、提取数据、存储数据及处理异常。还提到了Python爬虫的实际应用,如获取新闻数据和商品信息。
|
17天前
|
数据采集 Python
【python】爬虫-西安医学院-校长信箱
本文以西安医学院-校长信箱为基础来展示爬虫案例。来介绍python爬虫。
【python】爬虫-西安医学院-校长信箱
|
1月前
|
数据采集 Python
爬虫实战-Python爬取百度当天热搜内容
爬虫实战-Python爬取百度当天热搜内容
70 0
|
1月前
|
数据采集 存储 XML
深入浅出:基于Python的网络数据爬虫开发指南
【2月更文挑战第23天】 在数字时代,数据已成为新的石油。企业和个人都寻求通过各种手段获取互联网上的宝贵信息。本文将深入探讨网络爬虫的构建与优化,一种自动化工具,用于从网页上抓取并提取大量数据。我们将重点介绍Python语言中的相关库和技术,以及如何高效、合法地收集网络数据。文章不仅为初学者提供入门指导,也为有经验的开发者提供进阶技巧,确保读者能够在遵守网络伦理和法规的前提下,充分利用网络数据资源。
|
1月前
|
数据采集 测试技术 API
python爬虫之Appium 的使用
搭建appium环境,appium基本使用,API操作等等
46 0
|
23天前
|
数据采集 安全 Python
python并发编程:Python实现生产者消费者爬虫
python并发编程:Python实现生产者消费者爬虫
24 0
python并发编程:Python实现生产者消费者爬虫
|
1月前
|
数据采集 数据挖掘 调度
异步爬虫实践攻略:利用Python Aiohttp框架实现高效数据抓取
本文介绍了如何使用Python的Aiohttp框架构建异步爬虫,以提升数据抓取效率。异步爬虫利用异步IO和协程技术,在等待响应时执行其他任务,提高效率。Aiohttp是一个高效的异步HTTP客户端/服务器框架,适合构建此类爬虫。文中还展示了如何通过代理访问HTTPS网页的示例代码,并以爬取微信公众号文章为例,说明了实际应用中的步骤。
|
1月前
|
数据采集 测试技术 API
python爬虫之app爬取-微信朋友圈
搭建appium环境,appium基本使用,API操作等等
79 0
|
3天前
|
数据采集 存储 JSON
Python爬虫面试:requests、BeautifulSoup与Scrapy详解
【4月更文挑战第19天】本文聚焦于Python爬虫面试中的核心库——requests、BeautifulSoup和Scrapy。讲解了它们的常见问题、易错点及应对策略。对于requests,强调了异常处理、代理设置和请求重试;BeautifulSoup部分提到选择器使用、动态内容处理和解析效率优化;而Scrapy则关注项目架构、数据存储和分布式爬虫。通过实例代码,帮助读者深化理解并提升面试表现。
12 0
|
6天前
|
数据采集 JavaScript 前端开发
使用Python打造爬虫程序之破茧而出:Python爬虫遭遇反爬虫机制及应对策略
【4月更文挑战第19天】本文探讨了Python爬虫应对反爬虫机制的策略。常见的反爬虫机制包括User-Agent检测、IP限制、动态加载内容、验证码验证和Cookie跟踪。应对策略包括设置合理User-Agent、使用代理IP、处理动态加载内容、验证码识别及维护Cookie。此外,还提到高级策略如降低请求频率、模拟人类行为、分布式爬虫和学习网站规则。开发者需不断学习新策略,同时遵守规则和法律法规,确保爬虫的稳定性和合法性。