由于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. [转]bigbluebutton中文社区 / 开放API / bbb API

    bigbluebutton中文社区 / 开放API / bbb API 创建会议 这个接口可以重复调用多次,而不会有副作用.这带来的好处就是能简化应用程序加会的流程,无论什么用户想要加会,都可以先创建 ...

  2. NP完全性理论与近似算法

    转自:http://www.cnblogs.com/chinazhangjie/archive/2010/12/06/1898070.html 一.图灵机 根据有限状态控制器的当前状态及每个读写头读到 ...

  3. 黄聪:3分钟学会sessionStorage用法

    前言: 因最近移动端开发过程中遇到一个运营提出的所谓技术难点需求,对于原生APP来说轻而易举,毕竟自己的APP用户操作指哪打哪,但是H5该怎么做?H5就实现不了么?对于一个爱研究攻克这些前端棘手问题的 ...

  4. 黄聪:PHP如何实现延迟一定时间后自动刷新当前页面、自动跳转header("refresh:1;url={$url}");

    //1秒后自动跳转 header("refresh:1;url={$url}"); exit; //1秒后自动刷新当前页面header("refresh:1;" ...

  5. android开发实践之1:安装部署环境设置

    一.安装包 1.andorid studio: 2.Java sdk: 二.操作步骤 1.安装Java SDK: 2.安装android studio; 3.创建Helloword工程并运行:遇到问题 ...

  6. 在64位平台上的Lucene,应该使用MMapDirectory[转]

    http://blog.thetaphi.de/2012/07/use-lucenes-mmapdirectory-on-64bit.html 从3.1版本开始,Lucene和Solr开始在64位的W ...

  7. gcc同时使用动态和静态链接

    场景是这样的.我在写一个Nginx模块,该模块使用了MySQL的C客户端接口库libmysqlclient,当然mysqlclient还引用了其他的库,比如libm, libz, libcrypto等 ...

  8. SQLServer为已有数据的表添加一个自增列

    如果我们从Excel中导入到SQL中大量数据时,如果需要再单独处理特别需要一个字段去表示处理到那条数据了,这时因为没有主键就可以使用以下方式为每条数据添加id ,) not null

  9. 结构方程软件Lisrel 8.7 和HLM5.5

    这是我亲自使用过的软件,其中lisrel是破解版的,HLM是学生版的 下载地址:http://pan.baidu.com/s/1bnfCOrH

  10. 优化 要引入多个 模块 使用调用的方法,让管理更便捷 --execfile() 函数

    1.这里要使用的execfile('a.py') 函数,执行写了引入模块的py. 例子: b.py内容如下: #-*- coding: UTF-8 -*-#调用函数apisys.path.append ...