Convert all pcap file to csv with required columns python

后端 未结 2 712
忘掉有多难
忘掉有多难 2021-01-24 07:01

I need to write all the output CSV files to a different folder. For example if .pcap files were in subfolders Sub1, Sub2. And Sub1

2条回答
  •  情歌与酒
    2021-01-24 07:25

    If you are trying to recreate a folder structure at a different location you will need to ensure that the folders are created. This can be done using the os.makedirs() command. The subfolder structure can be determined by using any path deeper than startdir. This can then be appended onto your outputdir location.

    The file extension can also be replaced by using os.path.splitext().

    For example:

    import os
    
    startdir = '/root/Desktop/TTT'
    suffix= '.pcap'
    outputdir = os.path.join(startdir, "Outcsv")
    
    for root, dirs, files, in os.walk(startdir):
        for name in files:
            if name.lower().endswith(suffix):
                sub_folders = root[len(startdir)+1:]
    
                input_filename = os.path.join(root, name)
                output_path = os.path.join(outputdir, sub_folders)
                os.makedirs(output_path, exist_ok=True)  # Ensure the output folder exists
                output_filename = os.path.join(output_path, os.path.splitext(name)[0] + '.csv')
    
                cmd = 'tshark -r {} -T fields -e frame.number -e frame.time_relative -e wlan.sa -e wlan.da -e wlan.ta -e wlan.ra -e frame.time_delta_displayed -e frame.len -E header=y -E separator=, -E quote=d -E occurrence=f > {}'
                final_cmd = cmd.format(input_filename, output_filename)
    
                print(final_cmd)
                os.system(final_cmd)
    

提交回复
热议问题