RU
Открыть CopyPost

Новостной агрегатор из десятков Telegram-каналов: быстро, без дублей и рекламы

3 минуты чтенияНовостные агрегаторыСкоростьФильтры

Собираем ленту из многих источников в один канал: несколько источников в пайплайне, турбо-приём, фильтры рекламы и защита от повторов.

Содержание
  1. Схема
  2. Шаг 1. Аккаунты для чтения
  3. Шаг 2. Скорость
  4. Шаг 3. Чистая лента
  5. Без дублей и циклов
  6. Лента для сайта или бота
  7. Сколько стоит

Агрегатор — канал, который собирает новости из десятков источников по теме: экономика, город, крипта, спорт. Читатели приходят за скоростью и за тем, чтобы не подписываться на всё подряд. Значит, лента должна быть быстрой, чистой от рекламы и без повторов.

Схема #

источник 1 ─┐
источник 2 ─┼─► пайплайн: фильтры + замены ─► ваш канал
   …        │                              └─► вебхук (по желанию)
источник N ─┘

Один пайплайн может читать сколько угодно источников и публиковать в нескольких получателей. Пайплайнов — сколько нужно, они бесплатны.

Шаг 1. Аккаунты для чтения #

Источники — чужие публичные каналы, поэтому читать их должен пользовательский аккаунт, подписанный на эти каналы: бот видит только каналы, где он администратор. Используйте отдельный аккаунт, а не личный, и подписывайте его на каналы постепенно.

Публиковать в ваш канал удобно ботом-администратором — так поступает большинство агрегаторов.

Шаг 2. Скорость #

Крупные каналы Telegram доставляет подписчикам не всегда мгновенно. Турбо-приём решает это: свой аккаунт опрашивает канал каждые полсекунды, как приложение, в котором канал открыт на экране. Включается сам, до 10 каналов на аккаунт; самые важные источники отметьте «Турбо в приоритете». Источников больше десяти — подключите второй читающий аккаунт. Подробнее — в статье про турбо-приём.

Сам CopyPost тратит на пост доли миллисекунды; остальное время — это ответ Telegram. Посты без изменений копируются силами Telegram, без скачивания файлов, а альбомы уходят сразу целиком.

Шаг 3. Чистая лента #

Добавьте в пайплайн фильтры:

  • «Пропустить, если есть кнопки» — убирает большинство рекламных постов;
  • «Пропустить, если текст содержит erid» — маркированная реклама;
  • «Пропустить, если есть пересланное» — репосты источников из чужих каналов;
  • регулярное выражение для розыгрышей и «подпишись на канал».

Разбор с примерами — в статье о фильтрах рекламы. Подписи источников («Подписывайтесь на @source») удобно срезать заменой — см. замены текста и ссылок.

Без дублей и циклов #

  • Если один источник читают несколько ваших аккаунтов, пост копируется один раз.
  • Пост, который CopyPost сам опубликовал, не будет прочитан и отправлен повторно, даже если ваш канал окажется среди источников другого пайплайна.
  • После разрыва связи или перезапуска пропущенные посты догоняются, а уже опубликованные не повторяются.

Лента для сайта или бота #

Тот же пайплайн может отправлять каждую новость на ваш сервер вебхуком — например, чтобы публиковать ленту на сайте или в приложении. Как принять такой запрос и проверить подпись — в статье про вебхуки.

Сколько стоит #

Скорость одинаковая на всех тарифах: турбо-приём есть и в бесплатном. Три аккаунта бесплатно — для агрегатора на 20 источников этого хватает: два аккаунта читают, бот публикует. Начните в панели CopyPost.