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

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
简介: 爬前准备工作在开始安装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
相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
29天前
|
数据采集 存储 JSON
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第27天】本文介绍了Python网络爬虫Scrapy框架的实战应用与技巧。首先讲解了如何创建Scrapy项目、定义爬虫、处理JSON响应、设置User-Agent和代理,以及存储爬取的数据。通过具体示例,帮助读者掌握Scrapy的核心功能和使用方法,提升数据采集效率。
79 6
|
4月前
|
数据采集 存储 搜索推荐
打造个性化网页爬虫:从零开始的Python教程
【8月更文挑战第31天】在数字信息的海洋中,网页爬虫是一艘能够自动搜集网络数据的神奇船只。本文将引导你启航,用Python语言建造属于你自己的网页爬虫。我们将一起探索如何从无到有,一步步构建一个能够抓取、解析并存储网页数据的基础爬虫。文章不仅分享代码,更带你理解背后的逻辑,让你能在遇到问题时自行找到解决方案。无论你是编程新手还是有一定基础的开发者,这篇文章都会为你打开一扇通往数据世界的新窗。
|
23天前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
67 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
2月前
|
数据采集 存储 数据挖掘
深入探索 Python 爬虫:高级技术与实战应用
本文介绍了Python爬虫的高级技术,涵盖并发处理、反爬虫策略(如验证码识别与模拟登录)及数据存储与处理方法。通过asyncio库实现异步爬虫,提升效率;利用tesseract和requests库应对反爬措施;借助SQLAlchemy和pandas进行数据存储与分析。实战部分展示了如何爬取电商网站的商品信息及新闻网站的文章内容。提醒读者在实际应用中需遵守法律法规。
199 66
|
26天前
|
数据采集 Web App开发 JavaScript
爬虫策略规避:Python爬虫的浏览器自动化
爬虫策略规避:Python爬虫的浏览器自动化
|
29天前
|
数据采集 前端开发 中间件
Python网络爬虫:Scrapy框架的实战应用与技巧分享
【10月更文挑战第26天】Python是一种强大的编程语言,在数据抓取和网络爬虫领域应用广泛。Scrapy作为高效灵活的爬虫框架,为开发者提供了强大的工具集。本文通过实战案例,详细解析Scrapy框架的应用与技巧,并附上示例代码。文章介绍了Scrapy的基本概念、创建项目、编写简单爬虫、高级特性和技巧等内容。
58 4
|
2月前
|
机器人 Shell Linux
【Azure Bot Service】部署Python ChatBot代码到App Service中
本文介绍了使用Python编写的ChatBot在部署到Azure App Service时遇到的问题及解决方案。主要问题是应用启动失败,错误信息为“Failed to find attribute 'app' in 'app'”。解决步骤包括:1) 修改`app.py`文件,添加`init_func`函数;2) 配置`config.py`,添加与Azure Bot Service认证相关的配置项;3) 设置App Service的启动命令为`python3 -m aiohttp.web -H 0.0.0.0 -P 8000 app:init_func`。
|
2月前
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
702 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
2月前
|
数据采集 JavaScript 前端开发
JavaScript逆向爬虫——使用Python模拟执行JavaScript
JavaScript逆向爬虫——使用Python模拟执行JavaScript
36 2
|
3月前
|
移动开发 Android开发 数据安全/隐私保护
移动应用与系统的技术演进:从开发到操作系统的全景解析随着智能手机和平板电脑的普及,移动应用(App)已成为人们日常生活中不可或缺的一部分。无论是社交、娱乐、购物还是办公,移动应用都扮演着重要的角色。而支撑这些应用运行的,正是功能强大且复杂的移动操作系统。本文将深入探讨移动应用的开发过程及其背后的操作系统机制,揭示这一领域的技术演进。
本文旨在提供关于移动应用与系统技术的全面概述,涵盖移动应用的开发生命周期、主要移动操作系统的特点以及它们之间的竞争关系。我们将探讨如何高效地开发移动应用,并分析iOS和Android两大主流操作系统的技术优势与局限。同时,本文还将讨论跨平台解决方案的兴起及其对移动开发领域的影响。通过这篇技术性文章,读者将获得对移动应用开发及操作系统深层理解的钥匙。