Форум сайта python.su
0
Господа питоноводы, туплю несчадно. Задача- есть ФТП лог, в котором проскальзывают имена файлов. Все имена имеют одну маску. Необходимо выцепить эти имена и занести в базу. Формат записи такой
05/08/2015 16:40:35.108 GMT+04:00INFORMATIVE: File С:\example\ABC123 has been sent via FTP to /FTPdir/ABC123 on remote host 127.0.0.1
fileone = open('C:/FTP.log') for i in fileone.readlines(): if 'on remote host' in i: regular = re.sub(r'\w+//ABC', 'ABC', i) files.append(regular) print files fileone.close()
Офлайн
857
>>> import re >>> >>> s = '05/08/2015 16:40:35.108 GMT+04:00INFORMATIVE: File С:\example\ABC123 has been sent via FTP to /FTPdir/ABC123 on remote host 127.0.0.1' >>> >>> def f(s): ... pat = r'File (.*\\)?(.*) has been sent' ... match = re.search(pat, s) ... return match and match.group(2) ... >>> f(s) 'ABC123' >>>
Отредактировано py.user.next (Июнь 8, 2015 15:16:04)
Офлайн
0
py.user.next
Офлайн