爬前叨叨

从40篇博客开始,我将逐步讲解一下手机APP的爬虫,关于这部分,我们尽量简化博客内容,在这部分中可能涉及到一些逆向,破解的内容,这部分尽量跳过,毕竟它涉及的东西有点复杂,并且偏离了爬虫体系太远,有兴趣的博友,可以一起研究下。

之前看到知乎有人对手机App爬虫归类,基本符合规则,接下来的10篇博客可能集中在80%的App上,所以还是比较简单的

  1. 50%的app,通过抓包软件就可以分析出抓取参数并抓取到信息。
  2. 30%的app,可能需要适当的反编译,分析出加密算法并抓取到信息。
  3. 10%的app,可能加固,需要脱壳,然后反编译,分析出加密算法并抓取到信息
  4. 10%的app,通过各式各样的签名,证书,设备绑定等方法,隐藏加密算法。

首先配置第一轮的环境,配置好了,下一篇博客,就采用Fiddler+夜神模拟器[雷电模拟器]等实现儿歌多多APP的数据抓取工作

抓包

抓包是爬虫里面经常用到的一个词,完整的应该叫做抓取数据请求响应包 ,而Fiddler这款工具就是干这个的,当然还有其他工具,后面的博客中咱也会提及到

你可以百度关键字:Fiddler抓取手机APP 相关的博客一大票~,哪篇博客基本都可以叫你入门,所以你可以看看各家的,今天我这篇博客主要写的是Fiddler配合模拟器实现抓包操作。

百度Fiddler软件,找到官网,下载按照流程安装即可,当然你可以自己去找一个汉化版,这个看你使用百度的水平了,我使用的是4.0以上版本,建议你也使用这个吧,当然版本越高越好。

做一些简单的配置

普通https抓包设置

打开Fiddler ------> Options .然后打开的对话框中,选择HTTPS tab页,如图所示:

说明 (配置完后记得要重启Fiddler)

  1. 选中"Decrpt HTTPS traffic", Fiddler就可以截获HTTPS请求
  2. Ignore server certificate errors忽略证书错误

第一次会提示是否信任fiddler证书及安全提醒,选择yes,之后也可以在系统的证书管理中进行管理。

配置Fiddler允许远程连接

切换tab选项卡到 Connections 配置端口

  1. 选中"Allow remote computers to connect". 是允许别的机器把HTTP/HTTPS请求发送到Fiddler上来

等会设置手机代理时需要。设置好后重启fiddler保证设置生效。

到现在为止,其实Fiddler已经可以抓取你电脑上浏览器访问的数据了,如果不行,重启Fiddler和浏览器即可

记录本机的IP

打开cmd窗口,不会的自行百度

在里面输入 ipconfig 获取你的ip4地址 ,这个地址一定要记住,后面配置模拟器的时候是需要用的~

ip 192.168.137.1

下载模拟器

你可能更多的时候是使用模拟器来打游戏,作为程序猿,模拟器上安装APK是非常好用的。
自行下载安装夜神模拟器,雷电模拟器或者其他的都可以

安装完毕,长成这个样子
下载APK文件,直接拖拽到下面视图,就可以直接安装

找到设置,点击Wlan,长按鼠标左键,出现如下界面

点击修改网络

代理模式选择手动,输入刚才的IP和上述提到的8888端口

使用模拟器默认浏览器打开 http://192.168.137.1:8888, 点"FiddlerRoot certificate" 然后安装证书,如图:

安装完毕之后,打开模拟器上的浏览器,输入www.baidu.com

在Fiddler中抓取到如下链接,代表环境配置已经完毕

温馨提示下,在抓包过程中,你的fiddler不能关闭哦。关闭了之后你手机网络就不能用了。

停止网络监控的话去掉wifi的代理设置即可

设置过滤

1.手机上设置代理后,这时候fiddler上抓到的是pc和app所有的请求,如果pc上打开网址,会很多,这时候就需要开启过滤功能了。

2.打开fiddler>Tools>Fiddler Options>HTTPS>...from remote clients only,勾选这个选项就可以了

  • ...from all processes :抓所有的请求
  • ...from browsers only :只抓浏览器的请求
  • ...from non-browsers only :只抓非浏览器的请求
  • ...from remote clients only:只抓远程客户端请求

Fiddler 抓包简介

Fiddler想要抓到数据包,要确保Capture Traffic是开启,在File –> Capture Traffic。开启后再左下角会有显示,当然也可以直接点击左下角的图标来关闭/开启抓包功能。

需要能简单看懂Fiddler上的内容

更详细的使用,可以参考一篇写的很不错的文章 参考博客

上述横着的红色框
|名称 |含义 |
|------|------|
|#|抓取HTTP Request的顺序,从1开始,以此递增|
|Result|HTTP状态码|
|Protocol|请求使用的协议,如HTTP/HTTPS/FTP等|
|Host|请求地址的主机名|
|URL|请求资源的位置|
|Body|该请求的大小|
|Caching|请求的缓存过期时间或者缓存控制值|
|Content-Type|请求响应的类型|
|Process|发送此请求的进程:进程ID|
|Comments|允许用户为此回话添加备注|
|Custom|允许用户设置自定义值|

下面竖着的红色框
|图标|含义|
|-----|-----|
||请求已经发往服务器|
||已从服务器下载响应结果|
||请求从断点处暂停|
||响应从断点处暂停|
||请求使用 HTTP 的 HEAD 方法,即响应没有内容(Body)|
||请求使用 HTTP 的 POST 方法|
||请求使用 HTTP 的 CONNECT 方法,使用 HTTPS 协议建立连接隧道|
||响应是 HTML 格式|
|响应是一张图片|
||响应是脚本格式|
||响应是 CSS 格式|
||响应是 XML 格式|
||响应是 JSON 格式|
||响应是一个音频文件|
||响应是一个视频文件|
||响应是一个 SilverLight|
||响应是一个 FLASH|
||响应是一个字体|
||普通响应成功|
||响应是 HTTP/300、301、302、303 或 307 重定向|
||响应是 HTTP/304(无变更):使用缓存文件|
||响应需要客户端证书验证|
||服务端错误|
|| 会话被客户端、Fiddler 或者服务端终止|

好了,文章到此结束了~~大家Fiddler用起来吧

下一篇,将写一下如何爬取儿歌多多APP

Python爬虫入门教程 41-100 Fiddler+夜神模拟器+雷电模拟器配置手机APP爬虫部分的更多相关文章

  1. Python爬虫入门教程 48-100 使用mitmdump抓取手机惠农APP-手机APP爬虫部分

    1. 爬取前的分析 mitmdump是mitmproxy的命令行接口,比Fiddler.Charles等工具方便的地方是它可以对接Python脚本. 有了它我们可以不用手动截获和分析HTTP请求和响应 ...

  2. Python爬虫入门教程 43-100 百思不得姐APP数据-手机APP爬虫部分

    1. Python爬虫入门教程 爬取背景 2019年1月10日深夜,打开了百思不得姐APP,想了一下是否可以爬呢?不自觉的安装到了夜神模拟器里面.这个APP还是比较有名和有意思的. 下面是百思不得姐的 ...

  3. Python爬虫入门教程 37-100 云沃客项目外包网数据爬虫 scrapy

    爬前叨叨 2019年开始了,今年计划写一整年的博客呢~,第一篇博客写一下 一个外包网站的爬虫,万一你从这个外包网站弄点外快呢,呵呵哒 数据分析 官方网址为 https://www.clouderwor ...

  4. Python爬虫入门教程 36-100 酷安网全站应用爬虫 scrapy

    爬前叨叨 2018年就要结束了,还有4天,就要开始写2019年的教程了,没啥感动的,一年就这么过去了,今天要爬取一个网站叫做酷安,是一个应用商店,大家可以尝试从手机APP爬取,不过爬取APP的博客,我 ...

  5. 2019-03-22 Python Scrapy 入门教程 笔记

    Python Scrapy 入门教程 入门教程笔记: # 创建mySpider scrapy startproject mySpider # 创建itcast.py cd C:\Users\theDa ...

  6. Python基础入门教程

    Python基础入门教程 Python基础教程 Python 简介 Python环境搭建 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循 ...

  7. fiddler抓包+安卓机 完成手机app抓包的配置 遇到的一些问题

    fiddler抓包+安卓模拟器完成手机app抓包的配置:fiddler抓包+雷电模拟器 完成手机app抓包的配置 其实在安卓真机上弄比在虚拟机上弄更麻烦一点,它们的步骤都差不多一样,就是在安卓真机上弄 ...

  8. Python爬虫入门教程 50-100 Python3爬虫爬取VIP视频-Python爬虫6操作

    爬虫背景 原计划继续写一下关于手机APP的爬虫,结果发现夜神模拟器总是卡死,比较懒,不想找原因了,哈哈,所以接着写后面的博客了,从50篇开始要写几篇python爬虫的骚操作,也就是用Python3通过 ...

  9. Python爬虫入门教程 42-100 爬取儿歌多多APP数据-手机APP爬虫部分

    1. 儿歌多多APP简单分析 今天是手机APP数据爬取的第一篇案例博客,我找到了一个儿歌多多APP,没有加固,没有加壳,没有加密参数,对新手来说,比较友好,咱就拿它练练手,熟悉一下Fiddler和夜神 ...

随机推荐

  1. SourceTree安装跳过注册

    问题描述 SourceTree是一个可视化管理版本文件的工具,但是注册的时候需要打开外国的网站. 因此要安装时需要绕过这一步才能使用. 解决方案 1. 在下面路径下创建一个accounts.json文 ...

  2. C++中函数重载和函数覆盖的区别

    C++中经常会用到函数的重载和覆盖,二者也在很多场合都拿出来进行比较,这里我就对二者的区别做点总结: 函数重载: 函数重载指的是函数名相同.函数特征值不同的一些函数,这里函数的特征值指的是函数的参数的 ...

  3. spot 状压dp

    题目大意:数轴上有n个泥点,共有m个木板,求最少用几个木板可以覆盖全部泥点,并求最优方案数(n,m<=15) 看范围,肯定是状压 f[i][j]表示前i个泥点都被覆盖,使用的木板集合为j 转移: ...

  4. Solr的中英文分词实现

    对于Solr应该不需要过多介绍了,强大的功能也是都体验过了,但是solr一个较大的问题就是分词问题,特别是中英文的混合分词,处理起来非常棘手. 虽然solr自带了支持中文分词的cjk,但是其效果实在不 ...

  5. 深入学习MySQL事务:ACID特性的实现原理

    事务是MySQL等关系型数据库区别于NoSQL的重要方面,是保证数据一致性的重要手段.本文将首先介绍MySQL事务相关的基础概念,然后介绍事务的ACID特性,并分析其实现原理. MySQL博大精深,文 ...

  6. LaTeX 公式编辑

    推荐一篇关于LaTeX的文档:<一份不太简短的LATEX 2ε介绍> 1. 常用数学公式符号: 求期望 $\mathbb{E}$ \mathbb{E} 正负无穷 $+\infty$,$-\ ...

  7. WebWorker 中将已处理好的 VDOM 数据提交主线程渲染 DOM

    上篇文章讲了 WebWorker 的简单用法,其实网上很多类似的文章,我写的也比较垃圾.不会的建议可以网上看比较好点的资料. 这里我会先讲下我的大致思路.然后会贴上一堆不实用的垃圾代码供参考. Web ...

  8. 购物网站首页(学习ING)

    这几天在学着做购物网站,初步的完成了首页的框架吧,记录下.慢慢加强.主要难点,是样式的设置问题,如果自己想,自己摸索,可能会需要很长的调试.也是一个孰能生巧的过程吧,有些部分没有按照学习资料的方法也做 ...

  9. CAP带你轻松玩转Asp.Net Core消息队列

    CAP是什么? CAP是由我们园子里的杨晓东大神开发出来的一套分布式事务的决绝方案,是.Net Core Community中的第一个千星项目(目前已经1656 Star),具有轻量级.易使用.高性能 ...

  10. CBC 字节反转攻击

    一.CBC 简介 现代密码体制 现代密码中的加密体制一般分为对称加密体制(Symmetric Key Encryption)和非对称加密体制(Asymmetric Key Encryption).对称 ...