踩坑分享–fiddler无法抓取Web浏览器请求。

前言:以前同事别的浏览器可以正常抓取,我的浏览器就必须开无痕模式才能抓。上个月,google浏览器升级之后,发现fiddler连无痕模式也抓不到(现在同事的只能抓IE,下文能看到原因)。那时也没用到fiddler就没太上心,昨天开会让写接口自动化了,心想这要抓包啊,今天早上来卸载重装,证书设置发现还是不行。最后发现了是代理导致的问题,请等我慢慢道来:

1 > 首先说下fiddler的工作原理

Fiddler是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888. 当Fiddler启动后将自己变成一个代理服务器,这个代理服务器默认监听127.0.0.1:8888
Fiddler启动的时候默认IE的代理设为127.0.0.1:8888,而其他浏览器是需要手动设置的,所以将浏览器的代理改为127.0.0.1:8888就可以监听数据

之前没看fiddler这个原理吃的亏,盲目的排除问题,建议以后遇到问题先看下其工作原理

:本文没有讲述fiddler抓取https的相关设置,这个可以参考–Fiddler抓取HTTPS请求 这个博客

2 > 踩坑步骤–初探

在排除的时候把火狐浏览器代理设置为手动代理设置,竟然抓到数据啦,设置在下图:

fiddler不能抓取 python执行的程序 fiddler抓取不到请求_fiddler


3 > 踩坑步骤–功成

欣喜若狂,心想我一般主要用google浏览器我也要把这个弄通,然后就继续设置,在研究了一番后,谷歌也可以了,使用了Proxy SwitchyOmega插件(轻松快捷地管理和切换多个代理设置),说下我的方法:

1.首先浏览器安装此插件

fiddler不能抓取 python执行的程序 fiddler抓取不到请求_代理_02


2.左键-选项-新建情景模式

fiddler不能抓取 python执行的程序 fiddler抓取不到请求_代理服务器_03


3.代理协议选择HTTP,代理服务器选择127.0.0.1,代理端口选择8888,进行应用

fiddler不能抓取 python执行的程序 fiddler抓取不到请求_代理_04


4.左键-选择自己创建的情景模式,打开fiddler进行抓取,,即可抓到数据

fiddler不能抓取 python执行的程序 fiddler抓取不到请求_代理_05


5.不使用fiddler,左键-系统代理,可正常访问网站(关掉fiddler没有切换回来的是无法上网的哦)

fiddler不能抓取 python执行的程序 fiddler抓取不到请求_代理_06


以上方法是今天中午自己摸索所得,希望能帮上你。