文章内容

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 参数是日志文件的路径。

之后通过正则表达式匹配相关内容。


黄兵个人博客原创。

转载请注明出处:黄兵个人博客 - Python 解析 Nginx access.log 文件

分享到:

发表评论

评论列表