本人使用win10系统,python3.6。
假设我们现在已经从Wireshark导出了test.pcap数据包。
读取pcap文件有两种方式,逐行读入内存和一次性读入内存。
第一种方式,一次性读入内存。
from scapy.all import *
pkts = rdpcap(‘test.pcap’)
这行代码将test.pcap文件一次性读入内存,pkt中是很多个数据包。pkt可以当做列表顺序访问。
访问第n个包:pkts[n],效果如图所示。

第二种方式,逐行读
pr = PcapReader(‘test.pcap’)
pkt = pr.read_packet()
每次调用read_packet()都会读入下一个新的包到内存中
现在我们已经把数据包读入内存了,一个数据包装入了pkt变量中。
显示格式化数据包:pkt.show()
效果如图,协议已经分好层了
访问数据,如图所示
访问每层报文pkt[‘每层的名字’]
访问每层里面的内容pkt[‘每层的名字’].内容名,如pkt[‘IP’].dport

————————————————
原文链接:https://blog.csdn.net/friend_c/article/details/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/187348.html