csv TypeError:只能将str(不是“Ether”)连接到str

ohtdti5x  于 2023-05-20  发布在  其他
关注(0)|答案(1)|浏览(138)

我在Google Colab工作我有pcap文件(物联网传感器的网络数据包流量),我想从这些数据包中提取特征,并将其保存为csv文件,以开始训练机器学习算法。安装tshark。但是我仍然有这个问题(TypeError:只能将str(而不是“Ether”)连接到str)行中的错误

tsharkcommand = ("tshark -r" + xx +"-T fields -e ip.len -e ip_hdr_len")
import glob 
import os 

filey = open("try.csv",'a')
filey.writelines("Lable,IPlength,DestIP")
packets = rdpcap("bruteforce.pcapng")

for xx in packets:
  all = str (os.popen(tsharkcommand).read())
  all = all.splitlines()

  for features in all:
      filey.writelines("Lable"+ "," + features + "\n")

我该怎么解决呢?如果你有任何方法来提取功能比这种方式更容易,请提供给我。

aoyhnmkz

aoyhnmkz1#

根据我对代码的理解,您试图使用infile选项运行tshark命令,以从输入文件中获取ip.lenip_hdr_len
但是,scapy.all.rdpcap()不返回文件,而是返回不适合您的目的的packets[Packet]对象类型。
您可以使用xx.fields.values()来获取pcap文件中每个数据包的src.ipdst.ipip.length

相关问题