前言
永远相信美好的事情即将发生
背景
作为一名优秀的爬虫工程,不对,Java工程师,这半年来我一直提心吊胆的在和各大平台斗智斗勇。什么JS混淆,参数加密,数据加密等等,各种手段层出不穷,然而本人终究凭借过人的胆识,超强的判断力,聪慧的头脑,以及…算了,编不下去了,其实还是凭借大佬的帮助才一步一步爬出了坑
当然这半年中也收获到了很多,比如今天要说的抓包工具的 Fiddler 。相比于之前使用的F12开发者工具来说,Fiddler 的功能更加强大,比如有一些下载文件的请求,在开发者工具中是无法捕获到的,但在 Fiddler 中它便无所遁形。当然,它的优点还有很多,今天我们就来简单介绍一下它的使用
历程
获取
首先我们需要下载 Fiddler 。这里推荐使用 Fiddler4,新款的 Fiddler Everywhere 大家也可以自行研究,这里附上腾讯下载中心的 下载地址 ,选择 “普通下载” 即可。
相关设置
下载安装完成之后,我们还需要进行一些设置,首先是开启对 HTTPS 请求的监听,Fiddler 中默认是关闭的
依次点击 Tools - Options ,然后进行如下操作
点击 Turst Root Certificate 后弹出一个窗口,一路点击 yes 即可完成证书的安装,安装完成后手动重启一下 Filddler
请求分析
打开浏览器,随便输入一个网站(这里我们以老工具网——京东为例)
打开 Fiddler ,你会发现里面多了很多网络请求
我们使用 Fiddler 中的 Find 工具对关键词进行搜索
找到最下面一条被标记为黄色背景的数据,双击,然后在右侧进行如图操作(如果有提示需要对数据Decode,点击提示即可)
我们可以看到,这样就拿到了这次请求的完整数据,包括请求头信息以及返回的响应体
模拟请求
当然, Fiddler 也提供了一套模拟发送请求的功能,这个功能有点类似Postman
首先我们将上一条请求的请求头信息手动复制,然后清空请求列表,避免对接下来的模拟请求发送造成影响
选择右上角的 Composer,将复制的数据进行写入(注意URL和请求头信息需要分开写),然后点击 Execute
可以发现,刚才已经被清空的请求列表中又多出来一条记录,这条记录就是刚刚手动模拟发送的请求
关闭监听
Fiddler 开启后会默认监听所有的网络请求,如果我们想暂停 Fiddler 的监听,点击左下角即可
显示 Capturing 表示正在监听,点击后显示为空,表示监听已暂停。
总结
作为一款强大的抓包工具, Fiddler 的功能远不止今天展示的这些,其他功能包括对手机 App 网络请求的监听等等,有兴趣的同学可以继续深入研究,最后,还是有一句话要与诸君共勉