爬虫笔记(十)——学会使用Fiddler
Fiddler是一个常见的抓包分析软件,同时我们可以利用它详细地对HTTP请求进行分析,并模拟对应的HTTP请求。
为什么使用Fiddler软件?
网络爬虫是自动爬取网页的程序,在爬取的过程中必然涉及客户端和服务器端之间的通信,自然也需要发送一些HTTP请求,并接收服务器返回的结果。在一些稍复杂的网络请求中,我们直接看网址变化是看不出规律的,此时如果要进行自动化爬取网页,就必须要通过程序构造这些请求,而通过程序构造这些请求,就必须首先分析这些请求的规律。所以此时我们要使用工具截获这些请求,对其分析,这个过程如果使用抓包软件配合进行,则会变得更加轻松。
Fiddler的基本原理
在下图可以看出,如果没有Fiddler,本地应用如果要与服务器进行通信,可以直接向服务器发送Request请求,待服务器处理之后将处理结果返回本地,本地应用接收响应response。
如果有Fiddler,本地应用与服务器之间所有的Request和Response都将经过Fiddler,由Fiddler进行转发,可以看出,此时Fiddler以代理服务器的方式存在。由于所有的网络数据都会经过Fiddler,自然Fiddler能够截获这些数据,实现网路数据的抓包。
Fiddler的基本界面
在下图中,(1)处指位置为Fiddler的菜单栏,(2)处所指位置为Fiddler的工具栏,(3)处所指为Fiddler的会话列表,我们本地应用与互联网通信的会话信息在此显示,(4)处所指位置是Fiddler的QuickExec命令输入窗口,在此我们可以输入一些Fiddler指令来快速实现某项功能。
Fiddler捕获会话功能
安装完Fiddler后,我们就学习如何使用它捕获浏览器与服务器之间的会话信息。在此以Firefox火狐浏览器为例,让火狐浏览器使用Fiddler作为其代理服务器。设置火狐浏览器的方法如下:
首先点击火狐浏览器的设置,在点击高级,在“高级”中将标签切换成“网络”。
随后在“网络”下方看到“连接”字样“,我们单击”连接“右方的设置,单击后选择”手动配置代理“,并将”HTTP代理“设置为”127.0.0.1“,端口设置为”8888“,因为Fiddler监控的地址是127.0.0.1:8888。设置好之后,点击“确定”。
现在的网站有的使用HTTTP协议,有的使用的是HTTPS协议,如果想让Fiddler能够捕获他们,还需要设置下Fiddler。打开Fiddler,然后单击“Tools”,选择“Fiddler Options”,随后在弹出的界面中选择“HTTPS”标签,将下方选项全部勾选上,配置好之后,现在的Fiddler就能捕获火狐浏览器与服务器之间的HTTTP和HTTPS会话信息了。
任意打开一个网址可以看到一下界面,此时的标签是“Statistics”,显示的是一些页面统计信息。
将标签切换为“Inspectors”,显示的是一些嗅探信息,并且该标签下有很多子标签,比如“Headers”,子标签表示的网页是一些头信息。
使用QuickExec命令行
在Fiddler中我们可以使用命令快速完成一些功能。在Fiddler界面中,会话列表下方有一个输入小框,在此介绍一些常见的Fiddler命令。
1. cls
cls是清屏命令,输入该命令可以清空会话列表的所有会话。有时侯,由于传递的数据增多,在Fiddler会话列表中会出现大量的会话信息,此时界面相对来说较为杂乱,所以可以输入该指令清空会话信息列表。
2. select
通过select命令我们可以选择出某一类型HTTP会话功能,比如想选择出所有的html网页类型的HTTP会话,可以输入命令:select html ,输入命令后回车可以发现。会话列表中所有html类型的会话都已被选中。
如果想选出所有图片类型的会话信息,可以输入命令: select image
3. ?
?命令可以查找出网址中包含某些字符的会话信息,比如“?pic”可以查找出网址中包含“pic”字符串的会话信息。
4. help命令
help命令可以打开Fiddler官方的使用手册。
爬虫笔记(十)——学会使用Fiddler的更多相关文章
- PYTHON 爬虫笔记十:利用selenium+PyQuery实现淘宝美食数据搜集并保存至MongeDB(实战项目三)
利用selenium+PyQuery实现淘宝美食数据搜集并保存至MongeDB 目标站点分析 淘宝页面信息很复杂的,含有各种请求参数和加密参数,如果直接请求或者分析Ajax请求的话会很繁琐.所以我们可 ...
- python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例
python3.4学习笔记(十四) 网络爬虫实例代码,抓取新浪爱彩双色球开奖数据实例 新浪爱彩双色球开奖数据URL:http://zst.aicai.com/ssq/openInfo/ 最终输出结果格 ...
- 《MFC游戏开发》笔记十 游戏中的碰撞检测进阶:地图类型&障碍物判定
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9394465 作者:七十一雾央 新浪微博:http:// ...
- java jvm学习笔记十(策略和保护域)
欢迎转载请说明出处:http://blog.csdn.net/yfqnihao/article/details/8271415 前面一节,我们做了一个简单的实验,来说明什么是策略文件,在文章的最后,也 ...
- 《C++游戏开发》笔记十四 平滑过渡的战争迷雾(二) 实现:真正的迷雾来了
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9712321 作者:七十一雾央 新浪微博:http:/ ...
- [Python爬虫笔记][随意找个博客入门(一)]
[Python爬虫笔记][随意找个博客入门(一)] 标签(空格分隔): Python 爬虫 2016年暑假 来源博客:挣脱不足与蒙昧 1.简单的爬取特定url的html代码 import urllib ...
- 《C++游戏开发》笔记十二 战争迷雾:初步实现
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9475979 作者:七十一雾央 新浪微博:http:/ ...
- nodejs爬虫笔记(三)---爬取YouTube网站上的视频信息
思路:通过笔记(二)中代理的设置,已经可以对YouTube的信息进行爬取了,这几天想着爬取网站下的视频信息.通过分析YouTube,发现可以从订阅号入手,先选择几个订阅号,然后爬取订阅号里面的视频分类 ...
- nodejs爬虫笔记(二)---代理设置
node爬虫代理设置 最近想爬取YouTube上面的视频信息,利用nodejs爬虫笔记(一)的方法,代码和错误如下 var request = require('request'); var chee ...
- Python网络爬虫笔记(五):下载、分析京东P20销售数据
(一) 分析网页 下载下面这个链接的销售数据 https://item.jd.com/6733026.html#comment 1. 翻页的时候,谷歌F12的Network页签可以看到下面 ...
随机推荐
- C语言-字符类型
C语言-字符类型 char不仅是一种整数,也是一种特殊的类型:字符(character). 常用单引号表示字符的字面量,如'a', '1'. 单引号''也是一个字符,printf和scanf里用的%c ...
- DBUtils模版CRUD
准备:导包 1.创建c3p0-config.xml配置文件放在src下 <?xml version="1.0" encoding="UTF-8"?> ...
- C# 直接使用sql语句对数据库操作 (cmd.ExecuteNonQuery)
只介绍读和删 不管使用什么方法来对数据库进行操作都绕不开和数据库的连接问题,所以咱们先在App.config中添加连接字段 <connectionStrings> <add name ...
- Codeforces 446C 线段树 递推Fibonacci公式
聪哥推荐的题目 区间修改和区间查询,但是此题新颖之处就在于他的区间修改不是个定值,而是从L 到 R 分别加 F1.F2....Fr-l+1 (F为斐波那契数列) 想了一下之后,觉得用fib的前缀和来解 ...
- UVA 10054 The Necklace 转化成欧拉回路
题意比较简单,给你n个项链碎片,每个碎片的两半各有一种颜色,最后要把这n个碎片串成一个项链,要求就是相邻碎片必须是同种颜色挨着. 看了下碎片总共有1000个,颜色有50种,瞬间觉得普通方法是无法在可控 ...
- 吴裕雄--天生自然 JAVASCRIPT开发学习:输出
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Vue 项目de一些准备工作
1.安装node,同时也会自动安装npm,npm是node的一种包安装工具. 2.准备一个git,可以用来管理代码. 3.打开vue官网,可以使用vue-cli脚手架工作. 这里介绍一个element ...
- js正则 -180 到180 小数点后无限位
正则 -180 到180 小数点后无限位/^0$|^-?0\.\d*[1-9]$|^-?[1-9](\.\d*[1-9])?$|^-?[1-9]\d(\.\d*[1-9])?$|^-?1[0-7]\d ...
- CTF -攻防世界-web高手区-ics-06
打开网址 根据题意点开报表中心(因为其他的点开都一样,不信你试试) 会看见id =1 想到burp爆破id 所以打开burp抓包(不会抓包的百度 或者看我web新手区,有一题就有抓包 我说的很详细) ...
- VUE- iView组件框架的使用
VUE- iView组件框架的使用 1. 下载iView 工程. 引用:https://www.iviewui.com/