创建一个名为“bytes_u”的输出文件,前缀为文件名(bytes_filename),该文件在Python中存储有关大型响应的信息

2024-07-06 04:16:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我得到了一个日志文件,其中有一个GET请求列表,用双引号和空格分隔。示例如下所示:

unicomp6.unicomp.net - - [01/Jul/1995:00:00:06 -0400] "GET /shuttle/countdown/ HTTP/1.0" 200 3985

日志文件结构:

主机名:unicomp6.unicomp.net 时间戳:[01/Jul/1995:00:00:06-0400] 请求:“GET/shuttle/countdown/HTTP/1.0” HTTP响应:200 字节:3985

给定一个文件名,该文件名表示当前目录中的文本文件。我需要创建一个名为“bytes_u2;”的输出文件

第一行必须包含响应中超过5000字节的请求数。 第二行必须包含发送超过5000字节的所有响应发送的字节总数

此外,输出文件必须写入当前目录

我没能做到这一点。任何帮助都将不胜感激


Tags: 文件http示例列表getnet字节文件名
1条回答
网友
1楼 · 发布于 2024-07-06 04:16:35

这是一个对我有用的片段

with open('YOUR_INPUT_FILE', 'r') as input_file:
    bytes = []
    for lines in input_file.readlines():
        words = lines.split()
        bytes.append(words[-1])

bytes = list(int(byte) for byte in bytes)
usable_bytes = []
sum = 0
for usable in bytes:
    if usable > 5000:
        usable_bytes.append(usable)
        sum += usable

print(usable_bytes, sum)
bytecount = 'count = {}'.format(len(usable_bytes))
sum_state = 'sum = {}'.format(sum)

with open('YOUR_OUTPUT_FILE', 'w') as output_file:
    output_file.write(bytecount +'\n'+ sum_state)

相关问题 更多 >