如何从日志文件中提取数据

时间:2014-08-06 04:35:55

标签: python csv python-3.x split

我是python脚本的新手,所以请帮助我

我的日志文件是这个

xxx="asdff" yyy="qwernlk" zzz"jsfhla"
xxx="asdff" yyy="qwernlk" zzz"jsfhla"
xxx="asdff" yyy="qwernlk" zzz"jsfhla"
xxx="asdff" yyy="qwernlk" zzz"jsfhla"

我需要输出

    xxx        yyyy         zzz
asdff      qwernlk        jsfhla
asdff      qwernlk        jsfhla
asdff      qwernlk        jsfhla
asdff      qwernlk        jsfhla

并且此输出必须是csv文件格式.... (此csv文件必须具有公共标头,并且提取的值必须根据标头自动进行......)

提前谢谢!!!!!

请帮助我们......

1 个答案:

答案 0 :(得分:1)

我已经接受了你的输入并用dict组装了它。你在csv中写下这个。

file_name = open('log.txt','rb')
name_list = []
name_dict = {}
for line in file_name:
    line = line.split()
    for i in range(len(line)):
        if line[i].split('=')[0] in name_dict:
            name_dict[line[i].split('=')[0]].append(line[i].split('=')[1])
        else:
            name_dict[line[i].split('=')[0]] = []
            name_dict[line[i].split('=')[0]].append(line[i].split('=')[1])
for key in name_dict.keys():
    print key, name_dict[key]

Output:
xxx ['"asdff"', '"asdff"', '"asdff"', '"asdff"']
yyy ['"qwernlk"', '"qwernlk"', '"qwernlk"', '"qwernlk"']
zzz ['"jsfhla"', '"jsfhla"', '"jsfhla"', '"jsfhla"']

这里你的变量是键(xxxx,yyyy,zzzz),以及你为它分配的相应值。