# Name:fang xiaoyu # Time: 2023/3/11 11:40 import os import dpkt import pcapy # 指定要合并的文件夹路径和合并后的文件名 folder_path = "/path/to/folder" merged_file = "merged.pcap" # 获取文件夹内所有的pcap文件 pcap_files = [f for f in os.listdir(folder_path) if f.endswith('.pcap')] # 打开第一个pcap文件,读取第一个数据包的时间戳 reader = pcapy.open_offline(os.path.join(folder_path, pcap_files[0])) pcap = dpkt.pcap.Reader(reader) _, ts = next(pcap) # 创建一个新的pcap文件并写入第一个数据包 writer = dpkt.pcap.Writer(open(merged_file, 'wb')) writer.writepkt(_, ts) # 依次读取每个pcap文件的数据包并写入到新的pcap文件中 for pcap_file in pcap_files: reader = pcapy.open_offline(os.path.join(folder_path, pcap_file)) pcap = dpkt.pcap.Reader(reader) for ts, buf in pcap: writer.writepkt(buf, ts) # 关闭文件句柄 writer.close()