我在scapy中创建了一个嗅探器,我想将scapy捕获的数据包写入文件进行进一步分析?
def sniffer(ip):
filter_str = "icmp and host " + ip
packets=sniff(filter=filter_str,count=20)
f = open('log.txt',"a")
#f.write(packets)
最后一行代码不起作用。我有什么方法可以做到这一点吗?
答案 0 :(得分:0)
f.write
需要一个字符缓冲区,但是为它提供了Sniffed
对象,这是调用sniff
的结果。您可以非常简单地执行以下操作:
f.write(str(packets))
这应该有效。但它可能无法完全按照您的意愿显示信息。在写入packets
之前,您将需要做更多工作,从f
收集信息作为字符串。