Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
19.04.2021, 11:50
|
|||
---|---|---|---|
|
|||
Python, как считать файл с конца до определенного значения(файл лога почты) ? |
|||
#18+
Приветствую, стоит задача выбрать из лога почты только те строки, которые больше определенной даты(каждая строка в логе соответствует факту отправки и имеет дату-время). Т.е мне нужно грубо говоря, построчно перебрать заранее неизвестно кол-во строк с конца файла, пока не дойду до нужной мне даты. Как это осуществить? Пробовал варианты с чтением в буфер с конца файла и сдвигом указателя при помощи seek на предыдущий перевод строки, но т.к у меня 3-я версия питона, то вариант с переходом назад при помощи seek не проходит, вылетает ошибка "io.UnsupportedOperation: can't do nonzero cur-relative seeks" как я понял, это из-за того что работаем с юникодом, а там может быть разный размер символа. Далее попробовал вариант с deque , в целом всё норм, но только она возвращает N-е кол-во строк с конца файла, т.е заранее известное кол-во, у меня же неизвестно сколько строк мне нужно зачитать. Мне нужно зачитать все, пока не дойду до определенной даты. В целом задача состоит в парсинге файла лога почты и записи в базу все строк, которые больше определенной даты и по которым статус "Отправлено". ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=23&mobile=1&tid=1459487]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
28ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 278ms |
total: | 400ms |
0 / 0 |