fiddler是基于C#的HTTP抓包工具。

fiddler的原理:

  fiddler是http代理服务器,它会抓取浏览器向服务器发送的HTTP请求,然后在将该请求发送到服务器。再获取从服务器返回的请求结果,将结果发送到浏览器。

同类的工具有: httpwatch, firebug, wireshark

该图片来源于网络

注意:fiddler抓包的时候,如果没有正常退出的话,可能会导致你抓取的网站无法正常使用
解决方法:重启fiddler,该网站就能正常使用了。
 
fiddler常用按钮:
1、按F12出现左下角的抓取图标,表示fiddler开始抓包了。
 抓取到的页面URL信息链接不同颜色代表的含义:

此图来源于网络

成功抓取页面后如下,点击左侧抓取到的URL链接信息,右侧会显示解析后的URL链接信息。

2、回放功能:Replay(Ctrl + R),选中一个请求点击replay就会再次发送被选中的请求。

3、如何设置显示工具栏?

点击View-->show Toolbar就会如下图显示工具栏

4、如何设置URL的链接颜色?

设置成功后如下图链接颜色显示为红色

5、如何设置备注?

选中链接,点击气泡图标,填入备注

设置备注后如下:

6、保存抓取的包

常用的fiddler功能有哪些呢?

1、如何抓取手机APP的数据?

2、如何创建假页面进行测试?

3、如何实现慢网速?

4、如何对抓取到的页面进行过滤?

下面我们一个一个来进行讲解:

1、如何抓取手机APP的数据?

如何用fiddler工具抓取手机上的包?

1、必须在同一局域网内,设置手机代理转发,将手机上的数据流转发到我们的fiddler的工具上,

由fiddler工具访问网络从而获取到我们想要的内容。

设置代理的步骤:

2、如下图8888为(默认使用)端口号,勾选允许fiddler进行计算机远程连接
 

3、在手机上设置代理,先在Windows上运行cmd输入ipconfig查看ip,
我电脑和手机连接的是同一个路由器(wifi:lin)所以我的ip地址是看无线局域网适配器 无线网络连接的IPV4。
 
4、在手机上找到wifi设置代理为手动,填入IP地址和端口号
5、fiddler点击f12快捷方式,开始抓包。然后手机开始进行操作。
如下图为打开手机自带浏览器,输入www.imocc.com慕课网网站。
 

2、如何创建假页面进行测试?

什么是假页面呢?就是在抓取原有的页面到本地,对原有页面按测试要求进行修改。

用修改后的页面替换原有页面,对页面进行测试。

该功能一般用于在项目代码未更新,新的UI页面还未正常使用的情况下,不影响他人测试的情况下,使用抓包直接修改页面代码改为与新UI页面一致进行测试。

Fiddler中使用AutoResponder创建规则替换线上文件
我们的目标是把“我的地盘-禅道”替换为“我的地盘1-禅道”
1、点击F12抓取包,然后在浏览器中输入禅道地址,进入禅道首页,再切换到测试模块,就会如下抓取到页面信息。然后点击F12结束抓包。

2、点击选择被抓取的页面 点击Inspectors-->点击解码-->点击View in Notepad

3、点击View in Notepad保存到记事本后,选择另存为将文件以htm格式保存在本地。

4、用Notepad++打开刚刚保存到本地的文件,我把“我的地盘-禅道”改为“我的地盘1-禅道”

5、我们还时选择刚刚被抓取的页面,点击AutoResponder,勾选Enable Rules 和Unmatched requests passthrough,点击增加规则add Rule

6、点击选择替换的规则文件,然后我们选择刚刚保存的fiddler文件

7、点击save保存规则
8、点击F12抓取包,然后在浏览器中输入禅道地址,进入禅道首页,然后就会发现“我的地盘-禅道”被替换为“我的地盘1-禅道”。这就表示成功了。

3、如何实现慢网速?

 RULES下面performance-->Simulate Modem Speeds直接设置慢网速
设置后你再进行抓包,你会发现抓包的速度慢了很多

如果这个速度你还是觉得快,看不出来差别,那么你可以

点开Rules → Customize Rules 就会弹出一个CustomRules.js文件,修改该文件,加粗部分数值也可以使实现慢网速。

注意:如果该文件没有自动弹出,那么可以去\Fiddler2\Scripts文件夹下进行寻找。

if (m_SimulateModem) {
// Delay sends by 300ms per KB uploaded.
oSession["request-trickle-delay"] = "300";
// Delay receives by 150ms per KB downloaded.
oSession["response-trickle-delay"] = "150"
}
 

4、如何对抓取到的页面进行过滤?

可以利用filters设置过滤,选择Use Filters-->选择Host模式,我们选择Show the following Hosts-->
再填入要过滤出来的域名(多个域名可以用分隔号;进行分割)-->在选择Actions选项并选择Run Filterset Now。
注意:过滤页面填入是不要填入"http://"
过滤结果就如下图左边显示

参考资料:

fiddler抓包工具的基本使用的更多相关文章

  1. Charles是Mac的Fiddler抓包工具

    windows下面我们经常使用 Fiddler 抓包工具进行代理等一系列操作.然而,在 Mac 下的 Fiddler 勉强能运行,但是其挫的都不想说它了.今天看到朋友推荐这款 Charles Mac下 ...

  2. Python+Requests接口测试教程(1):Fiddler抓包工具

    本书涵盖内容:fiddler.http协议.json.requests+unittest+报告.bs4.数据相关(mysql/oracle/logging)等内容.刚买须知:本书是针对零基础入门接口测 ...

  3. Mac 下安装Fiddler抓包工具

    需求 我们都知道在Mac电脑下面有一个非常好的抓包工具:Charles.但是这个只能抓代理的数据包.但是有时候想要调试本地网卡的数据库 Charles 就没办法了.就想到了在windows下面的一个F ...

  4. Fiddler抓取https请求 & Fiddler抓包工具常用功能详解

    Fiddler抓取https请求 & Fiddler抓包工具常用功能详解   先来看一个小故事: 小T在测试APP时,打开某个页面展示异常,于是就跑到客户端开发小A那里说:“你这个页面做的有问 ...

  5. fiddler抓包工具总结

    Fiddler 抓包工具总结 Fiddler是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获.重发.编辑.转存等操作.也可以用来检测网络安全.反正好处多多,举之不尽呀!当年学习的时候也 ...

  6. Python3,x:Fiddler抓包工具如何进行手机APP的数据爬取

    示例一:苹果手机抓取教程 https://www.cnblogs.com/lizm166/p/8693085.html https://blog.csdn.net/cui130/article/det ...

  7. 移动端测试接口--Fiddler抓包工具

    Fiddler抓包工具是一款免费且功能强大的数据包抓取软件.它通过代理的方式获取程序http通讯的数据,可以用其检测网页和服务器的交互情况,能够记录所有客户端和服务器间的http请求,支持监视.设置断 ...

  8. 【前端开发】利用Fiddler抓包工具进行本地调试

    解决什么问题: 解决前端在本地联调页面 || 样式 || 脚本时经常修改服务器代码,浪费太多时间. 避免多人同时修改代码产生冲突问题.可以在本地调完代码之后,再贴到服务器上. 其实这个问题老早就开始想 ...

  9. Fiddler 抓包工具总结-bpafter

    转摘https://www.cnblogs.com/shy1766IT/p/5199334.html Fiddler 抓包工具总结   名称 含义 # 抓取HTTP Request的顺序,从1开始,以 ...

  10. Fiddler 抓包工具使用详解

    博客园 首页 新随笔 联系 订阅 管理 随笔 - 20  文章 - 0  评论 - 64 Fiddler 抓包工具总结 阅读目录 1. Fiddler 抓包简介 1). 字段说明 2). Statis ...

随机推荐

  1. 【[USACO16OPEN]262144】

    发现这个数列的范围特别大但是值域的范围特别小 于是可以大胆猜测这道题值域肯定需要开到状态里去 又发现\(262144=2^{18}\)这个暗示非常明显啊,暗示这道题跟二进制有关系 其实也没什么关系 设 ...

  2. 【转】Android Fragment 真正的完全解析(上)

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37970961 自从Fragment出现,曾经有段时间,感觉大家谈什么都能跟Fra ...

  3. 牛客国庆集训派对Day2 F、平衡二叉树 【构造+记忆化搜索】

    任意门:https://www.nowcoder.com/acm/contest/202/F 时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 1048576K,其他语言2097152K6 ...

  4. maven学习记录三——maven整合ssh框架

    6       整合ssh框架 6.1     依赖传递 只添加了一个struts2-core依赖,发现项目中出现了很多jar, 这种情况 叫 依赖传递 6.2     依赖版本冲突的解决 1.  第 ...

  5. SpringMVC学习记录六——异常定义和上传图片

    19       异常处理 19.1      异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeException,前者通过捕获异常从而获取异常信息,后者主要通过规范代码开发.测试 ...

  6. Android学习笔记_76_Android ProgressBar 进度条

    android 进度条的样式  例1:(默认样式(中等圆形))Xml代码 <ProgressBar      android:id="@+id/progressBar1"   ...

  7. 中小学信息学奥林匹克竞赛-理论知识考点--IP地址

    IP地址同身份证号一样,具有唯一性! 每个人都有一个唯一的标识:身份证号. 互联网中的计算机也一样,具有一个唯一的标识:IP地址. IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也 ...

  8. ng-repeat 指令(带有数组)

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  9. 浅谈二分查找 JavaScript

    算法介绍 二分查找,也称折半查找,是一种在有序数组中查找特定元素的搜索算法.查找过程经历一下步骤: (1)从有序数组的中间的元素开始搜索,如果该元素正好是目标元素,则停止搜索并返回该元素的索引值,否则 ...

  10. 简析--Java中常见的一些关键字的解析

    在Java开发中我们经常会用到一些关键字,关键字的定义很有意思"Java事先定义好的,具有特殊含义的单词",那么我们怎么来用好关键字呢?下面我们对一些常见的关键字进行分析和比较; ...