Логіка автоматичного наповнення Telegram каналів

Інколи є необхідність сформувати канал, в який регулярно будуть добавлятись матеріали. Звичайно способів організації цього процесу може бути багато. От один із прикладів, як це може працювати за допомогою програми ZennoPoster.

Напевне в першу чергу потрібно звідкись брати контент. Якщо це картинки – тоді все просто – потрібно написати рішення, яке буде брати їх і скачувати в папку. Наприклад буду скачувати 200 випадкових картинок з інтернету – візьму декілька сайтів (чи один конкретний сайт) і буду відправляти GET запити на випадкові сторінки, які скоріш за все візьму в sitemap.xml цього сайту.

Потім на сторінках буду шукати посилання на зображення, які будуть в тегах img і будуть містити атрибут src, який буде закінчуватись наприклад на jpg чи png. Результат буду добавляти в список щоб різні потоки мали доступ до всіх рядків з посиланнями. Сценарій буду виконувати в декілька потоків (якщо робота з декількома сайтами, або коли буду використовувати інший proxy для кожного посилання), або в один потік (при роботі з одним сайтом без використання proxy).

Так от, в мене одна частина сценарію буде просто наповнювати список посиланнь на зображення до того часу, поки там не назбирається наприклад 500 посиланнь. Після чого режим роботи зміниться, і розпочне роботу інша частина сценарію. Вона буде перш за все перевіряти чи достатьно вже завантажено картинок в папці. Якщо картинок не достатньо, то буде брати перший рядок із списка з видаленням.

Це дозволить різним потокам брати різні посилання. Після чого буде відправлятись GET запит на завантаження зображення. Його я буду зберігати в визначену папку. Власне коли картинок буде достатньо, то сценарій просто буде завершувати роботу з помилкою – це дозволить мені зупинити виконання по кількості помилок в самому ZennoPoster. Після чого я можу цей сценарій запустити за розкладом, і як тільки в папці буде недостатньо зображеннь, він автоматично буде поповнювати його до бажаної кількості.

Одночасно я можу зробити сценарій, який буде використовувати зображення, наприклад розміщуючи їх в Telegram. Він буде працювати з тією ж папкою зображеннь, в яку складає результат попередній сценарій.
Він буде брати наприклад перше випадкове зображення, буде переводити його в base64 тим самим зберігаючи його тимчасово в пам’яті комп’ютера, після чого оригінальне зображення буде видалено (щоб інший потік не зміг його взяти в роботу), після чого вже буде виконана цілева дія, наприклад відправка зображення в Telegram.

Залишається цей сценарій запускати по розпорядку, наприклад один раз в 5 хвилин. Поки є зображення, він буде їх використовувати, а коли вони закінчаться – інший сценарій їх буде поповнювати. От і получається автоматично наповнювальний канал, який не потребує затрат часу, а значить можна таким чином регулярно наповнювати декілька каналів.

Не знаю, наскільки прибутковою є така діяльність, тому що для себе подібну роботу ще не виконував. Якщо маєте досвід у цьому напрямку – буду радий якщо поділитесь ним в коментарях.

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *