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


Posted in Python onJuly 23, 2019

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 相关文章推荐
python简单获取本机计算机名和IP地址的方法
Jun 03 Python
python的else子句使用指南
Feb 27 Python
Python数据结构与算法之链表定义与用法实例详解【单链表、循环链表】
Sep 28 Python
对python-3-print重定向输出的几种方法总结
May 11 Python
python爱心表白 每天都是浪漫七夕!
Aug 18 Python
Python模拟简单电梯调度算法示例
Aug 20 Python
python3+selenium实现qq邮箱登陆并发送邮件功能
Jan 23 Python
python实现控制COM口的示例
Jul 03 Python
Python装饰器用法与知识点小结
Mar 09 Python
Python中实现输入一个整数的案例
May 03 Python
python3让print输出不换行的方法
Aug 24 Python
Python图像识别+KNN求解数独的实现
Nov 13 Python
Django 静态文件配置过程详解
Jul 23 #Python
python 设置xlabel,ylabel 坐标轴字体大小,字体类型
Jul 23 #Python
pandas通过字典生成dataframe的方法步骤
Jul 23 #Python
Python基于OpenCV实现人脸检测并保存
Jul 23 #Python
python 读取修改pcap包的例子
Jul 23 #Python
Django 用户认证组件使用详解
Jul 23 #Python
pandas DataFrame 警告(SettingWithCopyWarning)的解决
Jul 23 #Python
You might like
Windows下PHP开发环境搭建教程(Apache+PHP+MySQL)
2016/06/13 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
PHP mongodb操作类定义与用法示例【适合mongodb2.x和mongodb3.x】
2018/06/16 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
在JavaScript中通过URL传递汉字的方法
2007/04/09 Javascript
Mootools 1.2教程 函数
2009/09/15 Javascript
JavaScript1.6数组新特性介绍以及JQuery的几个工具方法
2013/12/06 Javascript
JavaScript将数据转换成整数的方法
2014/01/04 Javascript
jquery解析xml字符串简单示例
2014/04/11 Javascript
JavaScript中的Math 使用介绍
2014/04/21 Javascript
根据user-agent判断蜘蛛代码黑帽跳转代码(js版与php版本)
2015/09/14 Javascript
Bootstrap每天必学之导航条(二)
2016/03/01 Javascript
jQuery 获取屏幕高度、宽度的简单实现案例
2016/05/17 Javascript
bootstrap实现图片自动轮播
2016/12/21 Javascript
Angularjs中使用layDate日期控件示例
2017/01/11 Javascript
jquery.cookie.js的介绍与使用方法
2017/02/09 Javascript
详解Vue方法与事件
2017/03/09 Javascript
js指定步长实现单方向匀速运动
2017/07/17 Javascript
Vue2仿淘宝实现省市区三级联动
2020/04/15 Javascript
Vue.js递归组件构建树形菜单
2017/12/24 Javascript
如何获取TypeScript的声明文件.d.ts
2018/05/01 Javascript
Python编写百度贴吧的简单爬虫
2015/04/02 Python
使用 Python 实现微信群友统计器的思路详解
2018/09/26 Python
Django中在xadmin中集成DjangoUeditor过程详解
2019/07/24 Python
使用Python代码实现Linux中的ls遍历目录命令的实例代码
2019/09/07 Python
django中瀑布流写法实例代码
2019/10/14 Python
Python run()函数和start()函数的比较和差别介绍
2020/05/03 Python
Python爬虫进阶之爬取某视频并下载的实现
2020/12/08 Python
css3的过滤效果简单实例
2016/08/03 HTML / CSS
垃圾回收的优点和原理。并考虑2种回收机制
2016/10/16 面试题
利用指针变量实现队列的入队操作
2012/04/07 面试题
如何在.net Winform里面显示PDF文档
2012/09/11 面试题
学期自我评价
2014/01/27 职场文书
庆祝教师节主题班会
2015/08/17 职场文书
golang elasticsearch Client的使用详解
2021/05/05 Golang
Three.js实现雪糕地球的使用示例详解
2022/07/07 Javascript