配置
-
配置 Connecttions 以下图 选中 Tools ---> Options ---> Connecttions;html
-
配置 Https 以下图所示:web
-
由于要抓取https的数据 因此还须要生成证书,一路点击确认 Actions ---> Trust Root Certificate :浏览器
-
导出证书到桌面, Actions ---> Export Root certificate to Desktop,这时就能够看到桌面生成的证书了,这个证书是能够安装到系统或者浏览器的证书列表里抓取桌面软件或者安全
网页https数据包的。服务器
2、手机配置
手机配置须要让电脑和手机设备在同一个局域网里面,因此能够再电脑上开个wifi连接手机markdown
-
手机在WIFi列表上长按连接的本地局域网WIFI的名称 选择 修改网络 ---> 高级设置 ---> 代理 ---> 手动(通常Android手机都是这个套路)网络
-
配置参数以下图:post
-
配置完成以后还须要将Fiddler生成的证书安装到手机上,在手机浏览器上面输入代理服务器的IP和端口,例如我电脑的IP :http://192.168.60.107:8888 会看到以下页面:插件
-
这里还须要注意一点就是在抓移动端数据的时候,用到了开头下载的 Fiddlercertmaker 插件,这个插件能够帮助咱们抓取到移动端的数据,直接点击运行,而后重启Fiddler,以下图点击肯定便可:代理
-
至此手机访问网络就能够看到抓到Https网络请求了以及获取的数据:
3、浏览器配置
-
若是咱们要抓取web页面的https数据包,请首先配置浏览器代理,例如火狐浏览器,选项 ---> 常规 ---> 网络代理 ---> 设置:
-
而后将上述导出到桌面的证书添加到浏览器的证书列表里面,固然也能够经过访问代理服务器下载证书,进入选项--->隐私与安全---->证书--->查看证书, 以下图:
-
web配置也完成了能够看到访问百度成功了,而且拿到了网页数据:
遇到的问题
-
对于移动端抓包,若是咱们按配置,就是抓不到数据包,这里必定要注意是否使用了Fiddlercertmaker这个插件,这个是官方提供的专门抓取Android和IOS Https数据包的插件;
-
还有就是经过以上的配置仍是抓取不到数据,那问题极可能就出如今证书上了,这里的方法就是将Fiddler生成的证书所有清除掉从新生成证书,而后从新安装,这里看一下再浏览器抓不到包的问题;
1.) 打开"运行"对话框(Win+R),输入命令:certmgr.msc 回车,打开证书管理并搜索证书,操做(A)--->查找证书---> 删除:
2.) 打开火狐浏览器,进入选项--->隐私与安全---->证书--->查看证书,查找以DO_NOT开头的关于Fiddler的证书,每一个选项tab里面都找一找,而后干掉;
3.) 证书清除干净以后咱们从新生成证书,执行上述的配置.3和4生成证书步骤,注意:这里生成证书有可能会失败 ,弹出“creation of the root certificate was not successful”提示;
4.) 解决办法:打开"运行"对话框(Win+R)切换到Fiddler安装目录 执行命令:makecert.exe -r -ss my -n "CN=DO_NOT_TRUST_FiddlerRoot, O=DO_NOT_TRUST, OU=Created by http://www.fiddler2.com" -sky signature -eku 1.3.6.1.5.5.7.3.1 -h 1 -cy authority -a sha1 -m 120 -b 09/05/2012
5.)从新生成证书后导入到浏览器便可,而对于移动端,只须要清除移动端的证书从新执行上述手机配置.3步骤 。
-
最后关于抓包的原理 能够参见这个博客:http://www.javashuo.com/article/p-oykyvbyv-ez.html