Проекты
/news
Агрегатор нефтегазовых новостей
Отраслевые новости по российской нефтегазовой отрасли разбросаны по агентствам, корпоративным страницам и телеграм-каналам, и большая часть их повторяет друг друга. Здесь обход идёт каждый час, повторы сводятся, а результат остаётся доступным полнотекстовому поиску.
Почему час, а не сутки
Веб-версия телеграм-канала отдаёт около двадцати последних постов. Плодовитые каналы выбирают этот запас за день, поэтому один суточный заход молча срезает хвост. Часовой обход не стоит ничего дополнительно и сохраняет полноту записи.
Из чего сделано
Только стандартная библиотека — ни pip, ни фреймворка. Дедупликация идёт по нормализованным заголовкам и каноническим адресам, поиск — на FTS5 из SQLite, суточный бриф собирает языковая модель из записей за прошедшие сутки. Несут это пять юнитов systemd: обход, бриф, веб-лента и телеграм-бот, разделённый на длинный опрос и суточную отправку, — у этих двух задач разный режим отказа.
Лента работает на этом сервере.