爬虫从入门到精通(16) |最详细的的Fiddler抓包软件介绍
提前声明:该专栏涉及的所有案例均为学习使用,如有侵权,请联系本人删帖!
文章目录
- 一、Fiddler介绍
- 二、Fiddler抓包简介
- 2.1简单使用及其字段说明
- 2.2 Statistics 请求的性能数据分析
- 2.3 Inspectors 查看数据内容
- 2.4 AutoResponder 允许拦截指定规则的请求
- 2.5 Composer 自定义请求发送服务器
- 2.6 Filters 请求过滤规则
- 2.7 Timeline 请求响应时间
- 三、Fiddler 配置解析HTTPS
- 四、Fidder抓取手机端数据表配置
- 五、Fiddler 内置命令与断点
一、Fiddler介绍
本文参考链接:https://www.cnblogs.com/yyhh/p/5140852.html
作用:
- 能够监听http/httpS的流量,可以截获从浏览器或者客户端软件向服务器发送的http/https请求;
- 对截获之后的请求,我们还能够查看请求中的内容;
- 伪造请求。不仅可以伪造客户端的请求,还能够伪造服务器的响应。——该功能能够方便我们进行前后端的调式。
- 测试网站的性能;
- 解密https的外部会话。因为https本身是一种加密的协议,通过fiddle我们可以进行解密操作;
- 提供第三方扩展插件,满足更多需求。
工作原理:
下载安装
- 官网下载:https://www.telerik.com/fiddler
- 一路向下安装
二、Fiddler抓包简介
2.1简单使用及其字段说明
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 或者服务端终止 |
2.2 Statistics 请求的性能数据分析
随意点击一个请求,就可以看到Statistics关于HTTP请求的性能以及数据分析了:
2.3 Inspectors 查看数据内容
Inspectors是用于查看会话的内容,上半部分是请求的内容,下半部分是响应的内容:
2.4 AutoResponder 允许拦截指定规则的请求
AutoResponder允许你拦截指定规则的求情,并返回本地资源或Fiddler资源,从而代替服务器响应。
看下图5步,我将“baidu”这个关键字与我电脑f:\Users\YukiO\Pictures\boy.jpeg
这张图片绑定了,点击Save保存后勾选Enable rules,再访问baidu,就会被劫持。
这个玩意有很多匹配规则,如:
- 字符串匹配(默认):只要包含指定字符串(不区分大小写),全部认为是匹配
字符串匹配(baidu) 是否匹配 http://www.baidu.com 匹配 http://pan.baidu.com 匹配 http://tieba.baidu.com 匹配
- 正则表达式匹配:以“regex:”开头,使用正则表达式来匹配,这个是区分大小写的
字符串匹配(regex:.+.(jpg | gif | bmp ) $) 是否匹配 http://bbs.fishc.com/Path1/query=foo.bmp&bar 不匹配 http://bbs.fishc.com/Path1/query=example.gif 匹配 http://bbs.fishc.com/Path1/query=example.bmp 匹配 http://bbs.fishc.com/Path1/query=example.Gif 不匹配
结果
2.5 Composer 自定义请求发送服务器
Composer允许自定义请求发送到服务器,可以手动创建一个新的请求,也可以在会话表中,拖拽一个现有的请求
Parsed模式下你只需要提供简单的URLS地址即可(如下图,也可以在RequestBody定制一些属性,如模拟浏览器User-Agent)
2.6 Filters 请求过滤规则
Fiters 是过滤请求用的,左边的窗口不断的更新,当你想看你系统的请求的时候,你刷新一下浏览器,一大片不知道哪来请求,看着碍眼,它还一直刷新你的屏幕。这个时候通过过滤规则来过滤掉那些不想看到的请求。
勾选左上角的Use Filters开启过滤器,这里有两个最常用的过滤条件:Zone和Host
2.7 Timeline 请求响应时间
在左侧会话窗口点击一个或多个(同时按下 Ctrl 键),Timeline 便会显示指定内容从服务端传输到客户端的时间:
三、Fiddler 配置解析HTTPS
Fiddler可以通过伪造CA证书来欺骗浏览器和服务器。Fiddler是个很会装逼的好东西,大概原理就是在浏览器面前Fiddler伪装成一个HTTPS服务器,而在真正的HTTPS服务器面前Fiddler又装成浏览器,从而实现解密HTTPS数据包的目的。
解密HTTPS需要手动开启,依次点击:
Tools –> Options –> HTTPS
勾选HTTPS,弹出正常安装一直点ok
四、Fidder抓取手机端数据表配置
想要Fiddler抓取移动端设备的数据包,其实很简单,先来说说移动设备怎么去访问网络,看了下面这张图,就明白了。
可以看得出,移动端的数据包,都是要走wifi出去,所以我们可以把自己的电脑开启热点,将手机连上电脑,Fiddler开启代理后,让这些数据通过Fiddler,Fiddler就可以抓到这些包,然后发给路由器(如图):
连接一个wifi,打开fiddler,点击菜单栏中的 [Tools] –> [Options]
- 重点:记住设置完上述的值后,一定要重启Fiddler,不重启Fiddler 上述设置的值将不会生效)(另:Fiddler 很多地方设置了值都需要重启,如果发现自己的设置的东西没有生效,先重启Fiddler再看是否已经生效
- 重启完Fiddler后,这时在 Fiddler 可以看到自己本机无线网卡的IP了。要是没有的话,重启Fiddler,或者可以在cmd中ipconfig找到自己的IP
手机和电脑要处于同一网络条件下(可以理解为:使用同一个WiFi),例如在手机端连接PC的wifi,然后去浏览器输出ip:8888
Android开始安装证书。有的手机可以直接点击已下载的文件进行安装,有的手机则不行。如果不能直接安装证书,我们可以通过以下方法来安装证书。
- 方法一:手机——设置——搜索【证书】二字——选择:安装证书或者证书管理:点击安装证书,在你的众多文件里面去选择刚刚下载的fiddler的证书,点击安装(注:选择安装的文件后,需要输入手机的锁屏密码。Android一定要有锁屏密码才能安装证书)
- 方法二:在浏览器里面,直接打开已经下载的文件,安装即可,安装步骤是:先输入手机锁屏密码——后到上图为证书命名界面。证书安装好后,查看已信任证书:具体位置在【安全——更多安全设置——加密和凭据——受信任的凭据】
安装完证书之后,开始配置网络。长按自己的wifi——修改
配置完以后,可以用手机访问应用,就可以看到截取到的数据包了
五、Fiddler 内置命令与断点
FIddler断点功能就是将请求截获下来,但是不发送,这个时候你可以干很多事情。
命令 | 对应请求项 | 介绍 | 示例 |
---|---|---|---|
? | All | 问号后边跟一个字符串,可以匹配出包含这个字符串的请求 | |
> | Body | 大于号后面跟一个数字,可以匹配出请求大小,大于这个数字请求 | >1000 |
< | Body | 小于号跟大于号相反,匹配出请求大小,小于这个数字的请求 | <100 |
= | Result | 等于号后面跟数字,可以匹配HTTP返回码 | =200 |
@ | Host | @后面跟Host,可以匹配域名 | @www.baidu.com |
select | Content-Type | select后面跟响应类型,可以匹配到相关的类型 | select image |
cls | All | 清空当前所有请求 | cls |
dump | All | 将所有请求打包成saz压缩包,保存到“我的文档\Fiddler2\Captures”目录下 | dump |
start | All | 开始监听请求 | start |
stop | All | 停止监听请求 | stop |
断点命令 | |||
---|---|---|---|
bpafter | All | bpafter后边跟一个字符串,表示中断所有包含该字符串的请求 | bpafter baidu(输入bpafter解除断点) |
bpu | All | 跟bpafter差不多,只不过这个是收到请求了,中断响应 | bpu baidu(输入bpu解除断点) |
bps | Result | 后面跟状态吗,表示中断所有是这个状态码的请求 | bps 200(输入bps解除断点) |
bpv / bpm | HTTP方法 | 只中断HTTP方法的命令,HTTP方法如POST、GET | bpv get(输入bpv解除断点) |
g / go | All | 放行所有中断下来的请求 | |
举例 |
?
>
<
=
@
select
cls
dump
断点命令:
断点可以直接点击Fiddler下图的图标位置,就可以设置全部请求的断点,断点的命令可以精确设置需要截获那些请求。如下示例:
bpafter
bps
bpv
g / go
爬虫从入门到精通(16) |最详细的的Fiddler抓包软件介绍相关推荐
- python读取fiddler_大数据采集之python的docker爬虫技术-fiddler抓包软件详细配置(7)...
本篇文章探讨了大数据采集之python的docker爬虫技术-fiddler抓包软件详细配置(7),希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入. 挑选常用的功能给各位老铁介绍下 ...
- python抓包工具_「docker实战篇」python的docker爬虫技术-fiddler抓包软件详细配置(七)...
挑选常用的功能给各位老铁介绍下. fiddler第一次进入fiddlerfiddler会请求fiddler的官网,检查更新操作布局分布 工具栏File -capture traffic开启爬虫File ...
- python爬虫抓包工具_「docker实战篇」python的docker爬虫技术-fiddler抓包软件详细配置(七)...
挑选常用的功能给各位老铁介绍下. fiddler 第一次进入fiddler fiddler会请求fiddler的官网,检查更新操作 布局分布 工具栏 File -capture traffic 开启爬 ...
- python抓包程序_「docker实战篇」python的docker爬虫技术-fiddler抓包软件详细配置(七)...
fiddler 第一次进入fiddler fiddler会请求fiddler的官网,检查更新操作 布局分布 工具栏 File -capture traffic 开启爬虫 File -new Viewe ...
- Spring Boot从入门到精通(超详细)
Spring Boot从入门到精通(超详细) _kayden_ 2020-07-20 15:19:22 9491 正在上传-重新上传取消 收藏 184 分类专栏: springboot 文章标签: ...
- Python爬虫从入门到精通——解析库pyquery的使用
分类目录:<Python爬虫从入门到精通>总目录 解析库使用篇: 解析库re的使用:正则表达式 解析库XPath的使用 解析库Beautiful Soup的使用 解析库pyquery的使用 ...
- python爬虫从入门到精通-Python爬虫从入门到精通视频(2018新版)
原标题:Python爬虫从入门到精通视频(2018新版) Python在软件质量控制.提升开发效率.可移植性.组件集成.丰富库支持等各个方面均处于先进地位,并且随着人工智能的兴起,Python发展得越 ...
- Python爬虫从入门到精通——爬虫实战:爬取今日头条图片新闻
分类目录:<Python爬虫从入门到精通>总目录 本文为实战篇,需提前学习Python爬虫从入门到精通中<基本库requests的使用>和<Ajax数据爬取(一):基本原 ...
- 全网最详细的Python+Requests接口测试教程:Fiddler抓包工具
本篇涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容. 文章是针对零基础入门接口测试和py ...
最新文章
- selenium中webdriver识别class属性多个值中有空格的解决方案
- 合理规划您的硬盘分区
- 一个Linux下C线程池的实现
- hdu 3746 Cyclic Nacklace
- 【图文并茂】RNN、LSTM、GRU、ConvLSTM、ConvGRU、ST-LSTM的总结
- b/s结构中ajax技术浅析,B/S架构WEB程序中AJAX异步传输技术的应用研究
- cpu风扇转速慢_cpu风扇简介有哪些?cpu风扇选购技巧介绍_
- 微软使用 Fluent Design 对应用图标进行统一调整,并更新 Windows 10 Logo
- 卷积神经网络流程图_卷积神经网络
- DTO,VO,POJO,JavaBeans之间的区别?
- 同济大学计算机保研名单,同济大学2021届保研率27.8%,主要保研本校、复交清国...
- U8记账凭证修改方法汇总
- 09、Non-Black-Box ZK(Barak‘s protocol)--Alon Rosen
- 基于Spire.PDF将HTML转换为PDF
- 拓扑排序(topo_sort)
- 生信文献 | TIMER2.0用于分析肿瘤免疫细胞浸润
- 榆熙电商:在拼多多开网店如何计算产品价格弹性区间?
- linux设置NLS_LANG
- 【Linux】Ubuntu 18.04桌面美化
- 购买部署阿里免费ssl证书的步骤
热门文章
- [硕士毕业论文]word交叉引用
- 使用URLEncoder、URLDecoder进行URL参数的转码与解码
- CIFAR彩色图像分类数据集
- 如何删除Chrome地址栏记录?
- 《我编程,我快乐》 摘抄
- codeforce#420 E. Okabe and El Psy Kongroo(图论+矩阵快速幂)
- 基于漏磁的电机霍尔调试
- html静态页面作业——酷酷动物主题响应式网页(5页) 大学生动物主题网页作品 动物网页设计作业模板 学生网页制作源代码下载
- MySQL MEB常见用法
- Learning to Generalize Unseen Domains via Memory-based Multi-Source Meta-Learning for Person Re-ID