使用python解析文本文件

时间:2015-11-07 01:16:43

标签: python parsing

我有一个巨大的日志文件,我想用python解析。该文件包含工作和非工作音频/视频/图像文件的数据

log.txt的内容

filename = abc.mp4
played correctly

filname = cdf.wav
failed

filename = rtg.mp3
failed

现在从这个log.txt中找出失败的文件名 我试过re.search但似乎我没有达到任何一点的方法 所以我使用了以下方法,但到目前为止我无法找到文件名

f = open('log.txt', 'r')
for i in f.realines():
    if "failed" in i:
        print "failed files: "
f.close()

2 个答案:

答案 0 :(得分:3)

暂时保存对文件名的引用,如果失败则将其添加到list

with open('log.txt') as f:
    result = []
    for line in f:
        line = line.strip()
        if not line:
            continue
        if '=' in line:
            name = line.split('= ')[1]
        if line == 'failed':
            result.append(name)

完成上述操作后,result将成为list,其中包含所有失败的文件名。

答案 1 :(得分:0)

您只需添加dump变量即可修改代码。

In[6]: f = open('test', 'r')
for i in f.readlines():
    if "failed" in i :
        print "failed files: ", dump.split('= ')[1]
    dump = i
f.close()

Output
failed files:  cdf.wav
failed files:  rtg.mp3