【发布时间】:2020-03-14 05:07:50
【问题描述】:
我是 Python3 的新手并使用文本文件。我正在尝试从以 JavaScript (.js) 扩展名结尾的日志文件中提取所有文件名。该文件还包含其他文件扩展名。我只想返回文件名而不是路径,按字母顺序对输出进行排序并显示 uniuqe 值,因为日志条目中有重复。
日志文件中的示例是:
72.133.47.242 - - [25/Apr/2013:15:45:28 -0700] "GET /include/jquery.js HTTP/1.1" 200 25139
22.133.47.242 - - [25/Apr/2013:15:45:28 -0700] "GET /include/jquery.jshowoff.js HTTP/1.1" 200 25139
在这种情况下,我只想返回 jquery.js 和 jquery.jshowoff.js 而不是 HTTP 请求和其他日志数据。
这是我目前的代码:
filepath = '/home/user/Documents/access_log.txt'
with open(filepath, 'r') as access_log:
contents = access_log.readlines()
for line in contents:
if ".js" in line:
print(line)
我的输出只返回包含 .js 的行,但我不知道如何提取其余部分。我曾尝试使用正则表达式进行匹配,但没有成功,因为我也是新手。任何帮助将不胜感激。
【问题讨论】:
标签: python-3.x text-extraction