文章内容
2022/9/7 16:58:48,作 者: 黄兵
Python 解析 Nginx access.log 文件
最近需要解析 Nginx 文件的日志文件 access.log,找了一下 github 上的开源代码,找到一个项目,地址:NGINX access log parser
主要代码如下:
def get_requests(self, f):
log_line = f.read()
pat = (r''
'(\d+.\d+.\d+.\d+)\s-\s-\s' # IP address
'\[(.+)\]\s' # datetime
'"GET\s(.+)\s\w+/.+"\s\d+\s' # requested file
'\d+\s"(.+)"\s' # referrer
'"(.+)"' # user agent
)
requests = self.find(pat, log_line, None)
return requests
@staticmethod
def find(pat, text, match_item):
match = re.findall(pat, text)
if match:
return match
else:
return False
f
参数是日志文件的路径。
之后通过正则表达式匹配相关内容。
黄兵个人博客原创。
评论列表