在进行APP爬虫开发的时候,我们一般是通过手机连接PC端代理上网,进行抓包分析,那么以这种方式抓包的时候就需要在手机端进行对应的操作,但是我们不可能一直通过手动去操作手机进行抓包,所以要使用adb这种Android开发命令的方式进行操作。但是现在很多手机权限控制比较严密,直接连接真机有很多操作是不支持的,所以就必须用到模拟器。很庆幸安卓模拟器有很多种,下面我们就介绍一下APP爬虫开发环境的简单搭建和基础使用。

安装模拟器

安卓模拟器有很多种,夜神模拟器、腾讯手游助手、mumu模拟器等都是比较常用的模拟器,其中夜神模拟器是比较好的,但是它不支持Mac系统,mumu模拟器是由网易开发的,支持Windows和Mac平台,而且更新比较频繁,所以我使用的是mumu模拟器,官方文档和论坛也比较丰富。安装好以后就可以直接打开使用,如果碰到问题,可以在官方的常见问题中进行查看。

Mac安装adb

安装完模拟器之后,我们就要安装adb了,在Mac上首推brew cask进行安装

  • 安装brew
    请看这篇文章HomeBrew 官方安装太慢而失败?
  • 安装adb
    brew cask install android-platform-tools
    安装完adb后打开控制台,输入adb version

然后可以先使用真机进行测试,打开手机的“开发者选项”,并启用“USB调试”模式,在控制台输入adb devices这样就表示我们的adb已经安装好了,下面就是连接我们的模拟器了。

连接模拟器

在模拟器中打开“USB调试模式”,然后在控制台中关闭adb server,再重启即可

adb kill-server
adb server

这个时候再查看连接设备

438ec4b1为真机,emulator-5554为模拟器,要连接机器使用以下命令adb -s 438ec4b1 shell

在红框中你会发现区别,在连接真机的ls前面是$符号,在连接模拟器的ls前面是#,#符号就表示拥有root权限,非#符号就表示没有root权限,我试过几个真机,都是无root权限的,可能需要我们自行root后才能正常使用。所以这就是我们一定要使用模拟器的原因了。

因为我们不在真机上进行调试,所以就把连接断掉,只保留模拟器一个连接设备。在这种情况下,我们的adb命令也可以简短一些,比如使用adb连接设备,原来是adb -s xxx shell,现在就可以直接写adb shell,其他的adb命令也是类似。

安装抓包软件

电脑端常用的抓包软件Fiddler、Charles、mitmproxy,Fiddler是专属于Windows系统的抓包软件,并且功能强大,Charles是跨平台的软件,但是功能不如Fiddler,在Mac和Linux使用Charles,mitmproxy也是跨平台的抓包工具,虽然也有可视化界面,但是不够友好,使用成本比较高,因此我们常用mitmproxy配合Python实现抓取工作。mitmproxy需要专门写了一个帖子,这里就不在详述了。

安装APP自动化操作软件

  • Appium
  1. 安装Android Studio
    Android Studio中文社区下载工具,安装后打开会报一个错,不用管

打开SDK Manager,安装对应的SDK版本

  1. 设置环境变量
    在vim ~/.bash_profile文件最后增加以下内容,如果没有就新建一个
export ANDROID_HOME=/Users/xxxx/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
export PATH=${PATH}:${ANDROID_HOME}/build-tools/29.0.2

ANDROID_HOME路径就是上面图中SDK下载路径

PS: 上面环境变量中的build-tools/xx.xx.xx要在build-tools目录下去看具体情况,我们主要是需要使用aapt工具,所以aapt在哪个目录下就填写哪个目录。

配置完以后执行source ~/.bash_profile命令,重新加载环境变量,然后输入aapt -v查看命令是否正常运行

3.安装JDK从官网下载JDK 8,官网下载需要注册账号,比较麻烦。可以在找第三方网站上的下载,我是在一个百度云分享链接下载的,可惜现在忘了地址了,不好意思。

  1. 安装Python操作库
    pip install Appium-Python-Client

然后就可以正常使用了。

  • Airtest
    Airtest是网易开发的自动化测试工具,虽然不如appium专业,但是胜在安装简单,使用简单。直接在官网下载即可,而且文档也比较齐全。最重要的是安装完后,所有测试环境就OK了。然后再安装pip install poco就可以使用了。最最最重要的是,在其他机器上想要使用以及编写好的脚本,只需要安装pip install poco就可以了,不需要再安装Airtest工具。
    ---
    如果你觉得我的文章还可以,可以关注我的微信公众号,查看更多实战文章:Python爬虫实战之路
    也可以扫描下面二维码,添加我的微信公众号

APP爬虫开发环境准备相关推荐

  1. “化鲲为鹏,我有话说”如何用鲲鹏弹性云服务器部署《Python网络爬虫开发环境》

    python的网络爬虫功能是有目共睹的,我这边简单介绍下我所理解的,在鲲鹏服务器上布署网络爬虫实战开发环境的一个过程! 首先:需ECS有python环境基础(这论坛里有很多人发过相关的贴子,太家可以选 ...

  2. python爬虫开发环境中几个爬虫库的主要用途_分分钟了解Python爬虫

    一:Scrapy框架 在python爬虫时我们需要使用Scrapy框架,来提取结构化数据,他是Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据 ...

  3. 1.App Inventor开发环境构建

    1.App Inventor(环境构建)(转) App Inventor是一种网页(在线.离线均可)开发安卓手机应用的方式,2010年7月,由google开发2012年移交MIT,她无需编程基础,开发 ...

  4. alios下载_AliOS Studio开源工具|AliOS Cloud App集成开发环境(AliOS Studio)下载 v1.2.1 官方Windows版 - 比克尔下载...

    AliOS Studio是阿里巴巴提供的AliOS Cloud App的集成开发环境,AliOS Cloud APP是AliOS为多端互联网而生app应用,采用CAF(Cloud App Framew ...

  5. python爬虫开发环境_python爬虫开发教程下载|Python爬虫开发与项目实战(范传辉 著)pdf 完整版_ - 极光下载站...

    Python爬虫开发与项目实战pdf扫描版下载.Python爬虫开发是一个Pthyon编程语言与HTML基础知识引领读者入门知识,重点讲述了云计算的相关内容及其在爬虫中的应用,进而介绍如何设计自己的爬 ...

  6. 【爬虫系列之一】爬虫开发环境的搭建

    2019独角兽企业重金招聘Python工程师标准>>> 当前python分为2.x版本,以及3.x版本,这两个版本相互直接是不兼容的,但是当前世面的主流web或者程序还是2.x偏多, ...

  7. python爬虫开发环境

    1.Python开发环境搭建 python是一种跨平台的计算机语言,是一种解释型.面向对象和动态数据的高级程序设计语言. python3.x设计理念更加高效合理和人性化,代码开发和运行效率更高. py ...

  8. python3 爬虫 requests安装_爬虫开发环境部署

    欲善其事必先利其器 提起爬虫我们首先就会想到python,虽然其他的语言也可以做出爬虫,但是都没有python方便,python有许多第三方库可以为我们所用,所以我们会以python的角度学习爬虫. ...

  9. ubuntu20.04爬虫开发环境搭建以及常用软件安装

    1.换源更新系统 sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak sudo vim /etc/apt/sources.list #添加阿 ...

最新文章

  1. 【总结整理】《人人都是产品经理》---读后感
  2. imx6 板卡移植官方yocto版本(2_定制系统)
  3. 关于开发系统后门软件的几点思路
  4. qt ui框架_5个开源Python GUI框架
  5. 学霸女神冯净冰:我是如何从复旦走到诺奖获得者经济学大会的
  6. javaWeb回忆思维导图
  7. a+aa+...+aaa..aa表达式输出
  8. 基于M6097 switch的STP协议调试方法
  9. PHP 基于 SW-X 框架,搭建WebSocket服务器(一)
  10. 策略模式详解(用java语言实现策略模式)
  11. Hbuilder+模拟器,调试App网络连接失败
  12. 鼠标单击变双击补丁(含C++代码)
  13. iPhone 13发布前迎来坏消息,摩托车会损坏手机相机?
  14. c++课程设计之贪食蛇
  15. 京东X无人超市落户西安大雁塔 全球首个5A景区店诞生
  16. pool win10提示bad_Win10系统出现bad pool header蓝屏怎么办?
  17. 大一初学c语言——程序设计基础
  18. 《惢客创业日记》2021.04.13 -23(周二)惢客月老演示词
  19. regl vao 三角形交替
  20. html+css+javascript 之间的关系与作用

热门文章

  1. 大数据和机器学习,对我们商业和生活的影响
  2. 开机弹框显示IGCCTray.exe异常的修复方式
  3. 中国历史和世界史横向对照表,收藏了长知识。 ​​​​
  4. Date对象在Safari与IOS中的“大坑”
  5. 小白UEFI启动如何设置
  6. 绘画教程:伤口疤痕应该怎么画?如何画出皮肤质感?
  7. 什么是短信平台api接口?
  8. PPT中要实现图片或图形的任意拖拽
  9. 第三章 学习CC3200的ADC
  10. php电脑端打开微信页面大小,电脑微信小程序设置全屏的方法是什么?