python读取pcap包
import struct class FileConvert(object):
''' test python file'''
def __init__(self):
self.aa = 0
self.bb = 0 def convertPcapToHex(self,debugFlg=0):
infile = open("test.pcap",'rb')
outfile = open("testRslt.txt",'w')
a = int(0) while True:
a = int(0)
a = infile.read(4)
#print(type(a))
#print(len(a))
dataSaveNum = len(a)
if not a:
break
if(len(a) == 4):
pass
elif(len(a) != 0):
loopTime = 4 - len(a)
while (loopTime > 0):
loopTime = loopTime - 1
a = a + b'\x00'
z = struct.unpack('i',a)
unNeg = z[0] & 0xFFFFFFFF #负数的验证
if(dataSaveNum == 4):
outfile.write("%08x"%unNeg)
dataSaveNum = 0 while(dataSaveNum > 0):
saveData = unNeg&0xFF
#保留单个字节
#outfile.write("%08x"%unNeg)
unNeg = unNeg >> 8
dataSaveNum = dataSaveNum - 1
outfile.write("%02x"%saveData) if(debugFlg == 1):
outfile.write("\n") infile.close()
outfile.close() def convertHexToPcap(self):
infile = open("testRslt.txt",'r')
outfile = open("another.pcap",'wb')
#for a in infile.read():
while True:
a = infile.read(8)
#print(type(a))
#print(b);
if not a:
break
if(len(a)!= 0):
#16进制转换10进制数
b=int(a,16)
covertValue = struct.pack("L",b)
outfile.write(covertValue)
#outfile.write("%s"%a)
#outfile.write("\n")
infile.close()
outfile.close() if __name__ == '__main__':
fileCvrt = FileConvert()
fileCvrt.convertPcapToHex()
fileCvrt.convertHexToPcap()
开源项目:https://github.com/rshk/python-pcapng
python读取pcap包的更多相关文章
- Python解析Pcap包类源码学习
0x1.前言 在现场取证遇到分析流量包的情况会比较少,虽然流量类设备原理是把数据都抓出来进行解析,很大一定程度上已经把人可以做的事情交给了机器自动完成. 可用于PCAP包分析的软件比如科来,W ...
- python 读取位于包中的数据文件
假设你的包中的文件组织成如下: mypackage/ __init__.py somedata.dat spam.py 现在假设spam.py文件需要读取somedata.dat文件中的内容.你可以用 ...
- 【scapy】读取pcap
scapy读取pcap包 假设有pcap包test.pcap,读取其中的分层流量信息 代码: import scapy_http.http try: import scapy.all as scapy ...
- python解析pcap文件中的http数据包
使用scapy.scapy_http就可以方便的对pcap包中的http数据包进行解析 scapy_http可以在https://github.com/invernizzi/scapy-http下载, ...
- pcap文件生成metadata——使用tshark解析tcpdump的pcap包
pcap文件生成metadata #!/usr/bin/env python # -*- coding: utf-8 -*- import os import time, datetime impor ...
- C++ 读取 pcap文件.
http://blog.csdn.net/haolipengzhanshen/article/details/51854853 1.了解下pcap文件的结构 2.定义pcap文件头部结构体pcapFi ...
- 繁简转换OpenCC,autogb 和 autob5,iconv,python的jianfan包
OpenCC OpenCC 是跨平台.多语言的开放中文转换库,除了基本的简繁转换功能外,用户还可以选择对不同用词习惯和异体字的处理方式. OpenCC 还提供方便的网页转换界面. OpenOffice ...
- Python读取Excel数据并根据列名取值
一直想将自己接触到的东西梳理一遍,可就是迈不出第一步,希望从这篇总结开始不要再做行动的矮人了. 最近测试过程中需要用到python读取excel用例数据,于是去了解和学习了下xlrd库,这里只记录使用 ...
- python读取EXCLE文件数据
python读取EXCEL,利用 Google 搜索 Python Excel,点击第一条结果http://www.python-excel.org/ ,能够跨平台处理 Excel. 按照文档一步步去 ...
随机推荐
- mac上如何搜索文件?
在Mac上如果你用会了搜索功能那绝对是个事半功倍的技巧.因为Mac本身有强大的文件索引能力, 可以帮你快速的找到你需要的文件.就好比我要找到上周修改过的word文档应该怎么办? * 使用语音命令让Si ...
- 【leetcode】1035. Uncrossed Lines
题目如下: We write the integers of A and B (in the order they are given) on two separate horizontal line ...
- php strrpos()函数 语法
php strrpos()函数 语法 作用:寻找某字符串中某字符最后出现的位置.大理石构件怎么选择 语法:strrpos(string,find,start) 参数: 参数 描述 string 必需. ...
- 【LOMBOK】能引入 @Slf4j 注解,不能识别 log 的解决方法
问题: 在pom.xml中加入引入了lombok的依赖,可以引用@Slf4j注解不能识别log 如:注:上面一篇博客,已经说明lombok的安装了,但是用的时候还有点问题. 1).把lombok.ja ...
- 2019牛客暑期多校训练营(第九场)H Cutting Bamboos(主席树+二分)
题意:n个竹子,有高度,q次询问,询问之间是独立的,每次查询输入l,r,x,y代表砍区间[l,r]]内的竹子砍y次,最后一次要砍成0,每次砍掉的总长度相同,问第x次砍的高度是多少. 既然每次要求砍掉的 ...
- python tensorflow windows环境搭建体验
1. 需先安装python3.7,anaconda包管理器(类似java的maven),tensorflow,pycharm开发工具.文末附件下载地址. 2. 安装tensorflow,开始-Anac ...
- zookeeper centos分布式安装使用
1. 请先安装jdk和下载zookeeper.ssh免密登录请自行配置.大家可以到官网下载或我的网盘. 网盘地址: 共3台机器c0,c1,c2 192.168.132.148 c0192.168.13 ...
- 【python】随机数相关
http://www.cnblogs.com/yd1227/archive/2011/03/18/1988015.html 该博文写的很详细,备忘. 需要注意的是,写测试脚本的时候,不要将脚本命名成跟 ...
- JavaScript高级程序设计(第3版) 第四章(变量、作用域和内存问题)
4.1 基本类型和引用类型的值 1.基本类型的值是(简单的数据段),引用类型的值是(保存在内存中的对象). 基本类型的值在内存中占据固定大小的空间,因此被保存在栈中.(lifo ...
- Linux:VIM简单入手
现在的Linux系统一般都会默认安装VIM编辑器,如果没有安装VIM编辑器,也默认一定会有VI编辑器,VI编辑器产生的时间比鼠标来的更早,虽然功能很强大,但我建议安装VIM工具,安装了VIM之后,VI ...