0.前言


    在火狐浏览器和谷歌浏览器中能够很方便的调试network(抓取HTTP数据包),可是在360系列浏览器(兼容模式或IE标准模式)中抓取HTTP数据包就不那么那么方便了。尽管也可使用HttpAnalyzer等工,可是毕竟都是收费软件。仅仅需通过合适的过滤和操作,Wireshark也可抓取HTTP请求和响应。以下便说明详细操作。






1.设置过滤条件



【1】http and ip.addr == 192.168.1.106 and tcp.port == 8080



【a】http:指定网络协议



【b】ip.addr ==  192.168.1.106: 指定serverip地址,请依据实际情况替换。



【c】tcp.port ==  8080。 指定port号,请依据实际情况替换。




python 调用wireshark实时抓取电话语音流 用wireshark抓取http_python



图1 过滤条件


【2】点击apply


    点击apply之后可过滤得到两个数据包。各自是HTTP请求和HTTP响应。


python 调用wireshark实时抓取电话语音流 用wireshark抓取http_TCP_02



图2 HTTP请求和响应



2.查看TCP数据流——Follow TCP Stream


【1】在随意数据包上右击,选择Follow TCP Stream


    该步骤能够过滤出和该HTTP数据包有关的TCP数据包。包含TCP 3次握手,TCP分片和组装等。


python 调用wireshark实时抓取电话语音流 用wireshark抓取http_HTTP_03



图3 选择Follow TCP Stream


【2】终于得到HTTP请求和响应


【a】红色背景字体为HTTP请求,蓝色背景字体为HTTP响应


【b】从User-Agent中能够看出,360浏览器兼容模式使用了IE8内核(该台计算机操作系统为XP,IE浏览器版本号为8),这说明360浏览器使用了系统中的IE核。


python 调用wireshark实时抓取电话语音流 用wireshark抓取http_操作系统_04



图4 HTTP请求和响应详细内容


3.总结


    相对于火狐或谷歌浏览器中使用调试工具抓取HTTP数据包,使用wireshark要显得复杂些,可是也能够达到终于效果。这些操作分为两步。第一步设置合理的过滤条件,第二步在随意数据包中选择Follow TCP Stream。