使用PYTHON解析Wireshark的PCAP文件方法

 更新时间:2019年07月23日 11:06:26   作者:ChenZhuYu  
今天小编就为大家分享一篇使用PYTHON解析Wireshark的PCAP文件方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

PYTHON首先要安装scapy模块

PY3的安装scapy-python3,使用PIP安装就好了,注意,PY3无法使用pyinstaller打包文件,PY2正常

PY2的安装scapy,比较麻烦

from scapy.all import *
pcaps = rdpcap("file.pcap")

pcaps便是解析后的类似结构体的东西了

<pre name="code" class="python">packet=pcaps[0] #第1个数据包结构
packet.time#数据包时间戳
packet[Raw].load#PY3读取节点数据方法,packet[IP].src;packet[IP].dst
packet['Raw'].load#PY2读取节点数据方法,PY3也应该可以
lambda="lambda pcap:IP in pcap and UDP in pcap and pcap[IP].src=='192.168.1.1' and pcap[UDP].sport==80"

results=pcaps.filter(eval(lambda))#lambda是一种表达式,这里使用字符串,也可以不用eval,直接写表达式,然后返回经过筛选的数据包

python解析数据包十分占用内存,建议先用tshark命令行预处理筛选一遍数据包再进行PYTHON处理

cmd_filter="%s && ip.src==%s && ip.dst==%s && %s.srcport==%s && %s.port==%s"% \
        (Node['proto'].lower(),Node['src'],Node['dst'],Node['proto'].lower(),Node['sport'],Node['proto'].lower(),Node['dport'])
   
os.system('start /WAIT "" "%s\tshark" -r "%s" -R "%s" -w "%s"'%(Wireshark_path,pcap_filename,cmd_filter,Temp_pcap_File))

然后在处理Temp_pcap_File文件就好了

以上这篇使用PYTHON解析Wireshark的PCAP文件方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python 基于wx实现音乐播放

    python 基于wx实现音乐播放

    这篇文章主要介绍了python 基于wx实现音乐播放的示例代码,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-11-11
  • Python 如何查看程序内存占用情况

    Python 如何查看程序内存占用情况

    这篇文章主要介绍了Python 如何查看程序内存占用情况,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 深入理解Python内置函数map filter reduce及与列表推导式对比

    深入理解Python内置函数map filter reduce及与列表推导式对比

    这篇文章主要为大家介绍了Python内置函数map filter reduce及与列表推导式对比方法详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-06-06
  • 详解pandas安装若干异常及解决方案总结

    详解pandas安装若干异常及解决方案总结

    这篇文章主要介绍了详解pandas安装若干异常及解决方案总结,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-01-01
  • Python自动化办公之图片转PDF的实现

    Python自动化办公之图片转PDF的实现

    实现图片转换成PDF文档的操作方法有很多,综合对比以后感觉fpdf这个模块用起来比较方便而且代码量相当少。所以本文将利用Python语言实现图片转PDF,感兴趣的可以了解一下
    2022-04-04
  • Python利用AutoGrad实现自动计算函数斜率和梯度

    Python利用AutoGrad实现自动计算函数斜率和梯度

    AutoGrad 是一个老少皆宜的 Python 梯度计算模块。对于大学生、机器学习爱好者而言,你只需要传递给它Numpy这样的标准数据库下编写的损失函数,它就可以自动计算损失函数的导数(梯度)。本文将从普通斜率计算开始,介绍到如何只使用它来实现一个逻辑回归模型
    2022-07-07
  • Python字典一个key对应多个value几种实现方式

    Python字典一个key对应多个value几种实现方式

    python中字典的健和值是一一对应的,如果对字典进行添加操作时如果健的名字相同,则当前健对应的值就会被覆盖,有时候我们想要一个健对应多个值的场景,这篇文章主要给大家介绍了关于Python字典一个key对应多个value几种实现方式的相关资料,需要的朋友可以参考下
    2023-10-10
  • 了解不常见但是实用的Python技巧

    了解不常见但是实用的Python技巧

    下面有一些相对不常见但非常有用的Python技巧,小编来和大家一起学习一下
    2019-05-05
  • 用python实现域名资产监控的详细步骤

    用python实现域名资产监控的详细步骤

    域名资产监控,通过输入一个主域名,找到该域名对应的ip地址所在的服务器的端口开闭情况,本文重点给大家介绍用python实现域名资产监控的问题,需要的朋友可以参考下
    2021-11-11
  • 感知器基础原理及python实现过程详解

    感知器基础原理及python实现过程详解

    这篇文章主要介绍了感知器基础原理及python实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09

最新评论