Skip to content

004

原始文件为 Python 代码,本文是转换后的 Markdown 文件。

import re
import xlsxwriter
import json


result = []
f = open('ip_result.json', 'r')

line = f.readline()
while line:
    # 1. Python str to json
    json_data = json.loads(line)

    protocols = json_data['protocol_packets']

    # traverse protocols of this ip
    for i in protocols:

        this_data = {}
        this_data['ip'] = json_data['ip']
        this_data['protocol_type'] = i

        protocol_data = protocols[i]
        this_data['inPkt'] = protocol_data['inPkt']
        this_data['inBytes']= protocol_data['inBytes']
        this_data['outPkt']= protocol_data['outPkt']
        this_data['outBytes']= protocol_data['outBytes']

        result.append(this_data)

        # ip message
        # this_data = []
        # this_data.append(json_data['ip'])
        # this_data.append(i)

        # protocol_data = protocols[i]
        # this_data.append(protocol_data['inPkt'])
        # this_data.append(protocol_data['inBytes'])
        # this_data.append(protocol_data['outPkt'])
        # this_data.append(protocol_data['outBytes'])

        # result.append(this_data)

    line = f.readline()
f.close()

# with xlsxwriter.Workbook('test.xlsx') as workbook:
#     worksheet = workbook.add_worksheet()

#     worksheet.write_row(0, 0, ['ip', 'protocol_type', 'inPkt', 'inBytes', 'outPkt', 'outBytes'])
#     for row_num, data in enumerate(result):
#         worksheet.write_row(row_num+1, 0, data)

# 2. Python list to json file
with open('result.json', 'w') as f:
    json.dump(result, f)

# print(result)