Новостной агрегатор из десятков Telegram-каналов: быстро, без дублей и рекламы
Собираем ленту из многих источников в один канал: несколько источников в пайплайне, турбо-приём, фильтры рекламы и защита от повторов.
Содержание
Агрегатор — канал, который собирает новости из десятков источников по теме: экономика, город, крипта, спорт. Читатели приходят за скоростью и за тем, чтобы не подписываться на всё подряд. Значит, лента должна быть быстрой, чистой от рекламы и без повторов.
Схема #
источник 1 ─┐
источник 2 ─┼─► пайплайн: фильтры + замены ─► ваш канал
… │ └─► вебхук (по желанию)
источник N ─┘
Один пайплайн может читать сколько угодно источников и публиковать в нескольких получателей. Пайплайнов — сколько нужно, они бесплатны.
Шаг 1. Аккаунты для чтения #
Источники — чужие публичные каналы, поэтому читать их должен пользовательский аккаунт, подписанный на эти каналы: бот видит только каналы, где он администратор. Используйте отдельный аккаунт, а не личный, и подписывайте его на каналы постепенно.
Публиковать в ваш канал удобно ботом-администратором — так поступает большинство агрегаторов.
Шаг 2. Скорость #
Крупные каналы Telegram доставляет подписчикам не всегда мгновенно. Турбо-приём решает это: свой аккаунт опрашивает канал каждые полсекунды, как приложение, в котором канал открыт на экране. Включается сам, до 10 каналов на аккаунт; самые важные источники отметьте «Турбо в приоритете». Источников больше десяти — подключите второй читающий аккаунт. Подробнее — в статье про турбо-приём.
Сам CopyPost тратит на пост доли миллисекунды; остальное время — это ответ Telegram. Посты без изменений копируются силами Telegram, без скачивания файлов, а альбомы уходят сразу целиком.
Шаг 3. Чистая лента #
Добавьте в пайплайн фильтры:
- «Пропустить, если есть кнопки» — убирает большинство рекламных постов;
- «Пропустить, если текст содержит
erid» — маркированная реклама; - «Пропустить, если есть пересланное» — репосты источников из чужих каналов;
- регулярное выражение для розыгрышей и «подпишись на канал».
Разбор с примерами — в статье о фильтрах рекламы. Подписи источников («Подписывайтесь на @source») удобно срезать заменой — см. замены текста и ссылок.
Без дублей и циклов #
- Если один источник читают несколько ваших аккаунтов, пост копируется один раз.
- Пост, который CopyPost сам опубликовал, не будет прочитан и отправлен повторно, даже если ваш канал окажется среди источников другого пайплайна.
- После разрыва связи или перезапуска пропущенные посты догоняются, а уже опубликованные не повторяются.
Лента для сайта или бота #
Тот же пайплайн может отправлять каждую новость на ваш сервер вебхуком — например, чтобы публиковать ленту на сайте или в приложении. Как принять такой запрос и проверить подпись — в статье про вебхуки.
Сколько стоит #
Скорость одинаковая на всех тарифах: турбо-приём есть и в бесплатном. Три аккаунта бесплатно — для агрегатора на 20 источников этого хватает: два аккаунта читают, бот публикует. Начните в панели CopyPost.