爬虫----Fiddler如何将抓到的每个包(会话)自动到保存到不同的txt文件中

【原文链接】爬虫----Fiddler如何将抓到的每个包(会话)自动到保存到不同的txt文件中

(1)打开Fiddler后,点击【规则】-【自定义规则】

(2)此时会打开脚本文件窗口,如下所示

(3)然后按Ctrl+F搜索 OnBeforeResponse 方法

(4)然后首先在此方法前增加一个生成时间戳字符串的方法,用于后面保存文件的文件名

static function format(dat){
		//获取年月日,时间
		var year = dat.getFullYear();
		var mon = (dat.getMonth()+1) < 10 ? "0"+(dat.getMonth()+1) : dat.getMonth()+1;
		var day = (dat.getDay() +1) < 10 ? "0"+(dat.getDay()+1) : dat.getDay()+1;
		var hour = dat.getHours()  < 10 ? "0"+(dat.getHours()) : dat.getHours();
		var min =  dat.getMinutes()  < 10 ? "0"+(dat.getMinutes()) : dat.getMinutes();
		var seon = dat.getSeconds() < 10 ? "0"+(dat.getSeconds()) : dat.getSeconds();
		var milisec= dat.getMilliseconds() <10 ? "0"+(dat.getMilliseconds()) : dat.getMilliseconds()
                 
		var newDate = year + mon + day +"_"+ hour + min + seon+"_"+milisec;
		return newDate;
	}

如下图所示

(5)然后在OnBeforeResponse方法中增加如下一段代码,这里 www.baidu.com 用于过滤要保存的网址的包,保存文件的地方要指定目录以及生成的时间戳组装而成的txt文件名

		if (oSession.fullUrl.Contains("www.baidu.com")) { 
			try{
				var now = new Date();
				//var ts = now.getTime();
				var timestamp = format(now)
				oSession.SaveSession("G:/test/"+timestamp+".txt",false);
			}catch(err){
				var err;
			}
		}

如下图所示,比如这里就保存 www.baidu.conm 的包

(6)然后保存,并将fiddler重启

(7)然后在浏览器请求 https://www.baidu.com/ 网站

(8)此时可以看到fiddler抓到了许多包,并且 G:/test/ 目录中保存了一些txt文件

(9)找一个文件打开,可以看到这里面请求数据和响应数据均保存在文件中

(10)至此就做到了将fiddler中抓的包自动地保存到txt文件中了

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

redrose2100

您的鼓励是我最大的创作动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值