由于App没有像浏览器一样直观的后台请求工具,主要用一些抓包技术抓取数据。(目前也在学习安装,参考书籍。)

首先呢,一些简单的接口通过Charles或mitmproxy分析,找出规律,直接用程序去抓取就行。但是遇到麻烦的接口,就需要用到mitmdump对接python来对抓取到的请求和响应进行实时处理和保存。
规模性的采集,可以借助工具appium,自动化模拟app的点击、下拉操作。 一.安装Charles
1.安装Charles
下载地址:https://www.charlesproxy.com/download/ 下载对应版本(选择试用,跟pycharm一样都是可以试用30天) 2.解压安装包,安装到配置目录。 3.修改证书配置
原因:app通信应用了https协议,它的通信数据就会被加密,常规的截包方法无法请求数据。 配置步骤 打开软件 点击Help>SSL Proxying>Install Charles Root Certificate

点击安装证书>下一步>将所有证书放入到下列存储>浏览>受信任的根证书颁发机构>确定>下一步>完成

二.安装 mitmproxy 
mitmproxy 是个支持http和https的抓包程序,类似fiddles,charles,它是通过控制台形式操作的。

含有两个关键组件:
mitdunp 命令行接口,通过它对接python脚本,实现监听后的处理。
mitweb  是一个web程序,通过它观察到mitmproxy捕获的请求。 这里我直接通过pip 简单安装 pip3 install mitmproxy
三.Appium安装
Appium 移动端自动化测试工具 

下载地址:  https://github.com/appium/appium-desktop/releases

安装1.7.0版本成功 如图:


下一步安装node.js过程参考:  http://www.runoob.com/nodejs/nodejs-install-setup.html

下载node.js 安装包  : https://nodejs.org/dist/v4.4.3/node-v4.4.3-x64.msi

我采取的是二进制exe文件安装 过程如图:

四.Android开发环境配置

使用安卓设备做app抓取:下载配置 Android SDK 安装 Android Studio(大神推荐安装)

下载地址:https://developer.android.com/studio/index.html?hl=zh-cn (网站暂时进不去,未安装成功!)

13.App爬取相关库的安装(Charles,Mitmproxy,Appium)的更多相关文章

  1. 2.App爬取相关库的安装(安装mitmproxy)

    mitmproxy 是一个支持HTTP 和HTTPS 的抓包程序,类似fiddler,Charles的功能(它通过控制台的形式操作). mitmproxy 两个关键的组件:mitmdump 和 mit ...

  2. 1.App爬取相关库的安装(安装Charles及手机端证书安装配置)

    一.官网下载Charles安装包: https://www.charlesproxy.com/download1.下载对应版本 我这里下载的是 win 64 bit (下载完解压,双击打开charle ...

  3. Python爬取微信小程序(Charles)

    Python爬取微信小程序(Charles) 本文链接:https://blog.csdn.net/HeyShHeyou/article/details/90045204 一.前言 最近需要获取微信小 ...

  4. Python 关于 pip 部分相关库的安装

    下文中“:”后面安装的安装语句需要打开 cmd (命令提示符),在 cmd 中输入. 示例: 在搜索框输入 cmd,单机命令提示符: 然后输入安装语句,按回车键: 因为我之前已经装过了,所以这里显示的 ...

  5. 爬虫之 App 爬取

    - 移动端数据的爬取- 抓包工具: - fiddler - 青花瓷 - miteproxy - 环境的搭建 1.对fiddler进行配置:tools->options->connectio ...

  6. pyspider爬取数据存入redis--1.安装驱动

    首先安装pyredis的驱动 wget https://pypi.python.org/packages/source/r/redis/redis-2.9.1.tar.gz 解压并cd python  ...

  7. pyspider爬取数据存入es--1.安装驱动

    跟使用mysql一样,不安装es驱动的话,也会触发模块找不到的错误 ImportError: No module named elasticsearch 通过pip安装 pip install ela ...

  8. pyspider爬取数据导入mysql--1.安装驱动

    接上篇,刚装好的pyspider,我们打算大显身手,抓一批数据到mysql中. 然而,出师未捷,提示我们:ImportError: No module named MySQLdb 这是因为还没有安装M ...

  9. python爬取千库网

    url:https://i588ku.com/beijing/0-0-default-0-8-0-0-0-0-1/ 有水印 但是点进去就没了 这里先来测试是否有反爬虫 import requests ...

随机推荐

  1. 服务器病了吗? Linux 服务器的那些性能参数指标

    一个基于 Linux 操作系统的服务器运行的同时,也会表征出各种各样参数信息.通常来说运维人员.系统管理员会对这些数据会极为敏感,但是这些参数对于开发者来说也十分重要,尤其当你的程序非正常工作的时候, ...

  2. 页面框架加载完自动执行函数$(function(){});

    页面中有一些大的资源文件,如图片,声音等,如果一个事件绑定写在这些加载资源代码的下方,那么要等资源加载完才会绑定,这样体验不够好. 于是想不等资源加载完,只要框架加载完成就绑定事件,就可以把代码放在以 ...

  3. selenium phantomjs 设置代理ip方法

    最近遇到phantomjs动态更换ip的功能,在知乎上看到一篇不错的文章,顺手记下来以备后用 phantomjs selenium 如何动态修改代理? 可以这样做(Python代码): # 不使用代理 ...

  4. Python多版本共存virtualenv配置

    virtualenv 前提是已经安装好了python.我的ubuntu是自带了python2.7和python3.6 安装vrtualenv sudo apt-get install python-v ...

  5. NutzWk 开发框架

    官网: https://wizzer.cn/ 源码下载: https://github.com/wizzercn/NutzWk/ https://gitee.com/wizzer/NutzWk Int ...

  6. SET FMTONLY ON

    有时候在执行SQL查询语句时,仅仅需要知道检索的元数据,而不是具体的数据行,可以设置SET FMTONLY ON. SET FMTONLY只将元数据返回给客户端. 语法SET FMTONLY { ON ...

  7. [蓝桥杯]ALGO-79.算法训练_删除数组零元素

    从键盘读入n个整数放入数组中,编写函数CompactIntegers,删除数组中所有值为0的元素,其后元素向数组首端移动.注意,CompactIntegers函数需要接受数组及其元素个数作为参数,函数 ...

  8. MySQL 服务启动y异常: 本地无法启动MySQL服务,报的错误:1067,进程意外终止---解决

    启动MySQL后,几秒钟后直接报错了 然后在事件查看器中发现了几条错误信息 Can't start server: Bind on TCP/IP port: No such file or direc ...

  9. MyBatis 值的传递

    1.值的传递 - Map传值 可以通过对象获取Map传递值,在配置文件中通过 #{} 或 ${} 进行应用 查询30-40岁的用户 <!-- 值的传递 - Map传值 --> <se ...

  10. MySQL数据库事务各隔离级别加锁情况--read committed && MVCC(转载)

    http://www.imooc.com/article/17290 http://www.51testing.com/html/38/n-3720638.html https://dev.mysql ...