Вопрос состоит в следующем.
Есть лог, нужно сделать парсер.
1945827 xx.xxx.xxx.xxx TCP_TUNNEL/200 6811 CONNECT mail.ru:443 username HIER_DIRECT/xxx.xxx.xxx -
Как сделать парсер?
Нашел в интернете что - то типо такого
# -*- coding: utf-8 -*-
import datetime
f = open('/var/log/squid/access.log', 'r',encoding='UTF-8')
for line in f.readlines():
try:
dt = str( datetime.date.fromtimestamp( float( line.split( )[0][0:10] ) ) )
except:
dt = u'Error'
try:
ip = line.split( )[2]
except:
ip = u'Error'
try:
bytes = line.split( )[4]
except:
bytes = u'Error'
try:
miss = line.split( )[3]
if miss == 'NONE/400':
query = line.split( )[3]
else:
query = line.split( )[6]
except:
query = line.split( )[3]
if dt != 'Error' and ip != 'Error' and bytes != 'Error' and miss != 'NONE/400':
print ( dt + ' - ' + ip + ' - ' + bytes + ' - ' + query )
else:
continue
f.close()