Как я организовал канал с мемами, который занимает 10 минут в день
В этой статье покажу, как устроен мой Telegram-канал с IT-мемами: откуда берётся контент, как работает бот-админ, как устроена модерация и планирование постов, и почему диск не умрёт даже через 8000 лет. Возможно, ты захочешь сделать что-то похожее — или предложишь, как улучшить мою систему.
1. Идея и цель проекта
Я каждый день вижу тонну айтишных мемов — то сам натыкаюсь где-то в Telegram, то кто-нибудь скидывает в рабочий чат или в личку. Некоторые из них реально классные, те, которые хочется пересматривать, пересылать друзьям и не терять со временем.
Чтобы не держать мемы в куче чатов, я решил создать личный архив лучших IT-мемов — и оформить его в виде Telegram-канала. Так появилось уютное место, где собраны только топовые штуки из мира IT и тех, кто в теме.
Изначально идея была просто сохранить лучшие мемы — вроде бы ничего сложного. Но на практике это превращается почти в отдельную работу: нужно найти мем, скачать его, проверить формат и качество, не забыть выложить его в канал, а желательно ещё и в нужное время. Если заниматься этим вручную каждый день, то скоро начнёшь чувствовать себя не админом, а SMM-щиком на фуллтайм.
Я понял, что если не автоматизировать процесс, он быстро станет обузой. Поэтому я решил построить систему, которая возьмёт на себя рутину: от сбора и фильтрации до публикации. Так мемы появляются в канале сами, а я просто слежу, чтобы всё работало — как настоящий DevOps для юмора 😄

2. Техническая реализация
Бот, который управляет сбором, модерацией и публикацией мемов, написан на Python. Вся логика упакована в Docker-контейнер и работает через вебхуки на собственном сервере с доменным именем.
В реализации используются две основные библиотеки:
aiogram — для обработки Telegram-бота, управления кнопками, модерацией и планированием постов.
telethon — для парсинга контента из других Telegram-каналов от имени отдельного Telegram-аккаунта.
Такой стек даёт полный контроль над процессом: можно без ограничений управлять логикой, хранением, расписанием и безопасностью. Всё крутится локально, без сторонних платформ и лишних зависимостей.
Это не означает, что такую систему можно реализовать только так — просто я выбрал тот стек и архитектуру, которые мне максимально удобны и привычны как системному админу и разработчику.
3. Откуда берутся мемы?
Источник мемов — это отдельная тема. У меня есть пара Telegram-каналов, где я сам регулярно смотрю IT-мемы. Там частенько попадаются настоящие жемчужины. Плюс, друзья и коллеги часто скидывают мне мемы в личку или в рабочих чатах — и среди них тоже много годноты.
Чтобы всё это не терялось, я сделал отдельный канал-помойку — условное место, куда можно быстро переслать всё подряд: то, что увидел сам, и то, что прислали другие. Этот канал служит как временное хранилище: оттуда мемы уже попадают в обработку и, если проходят фильтрацию, отправляются в основной канал.
Контент подбирается гибридным способом — сначала автоматикой, потом — вручную.
Я настроил парсинг всех мемов из выбранных Telegram-каналов, включая мой канал-помойку. Это позволяет собрать максимальное количество потенциально интересных медиа. После этого включается ручная модерация — но она сделана удобно и по-умному.
Для этого я написал Telegram-бот, который по очереди присылает 10 картинок с двумя кнопками под каждым медиа:
✅ Принять
❌ Отклонить
В зависимости от моего решения, бот фильтрует медиафайлы — принятые идут в очередь на публикацию, а отклонённые — навсегда улетают в небытие.
Такой подход позволяет автоматизировать сбор и сортировку, но при этом сохранить человеческий контроль над качеством контента — чтобы в канал попадали только реально годные мемы.

4. Хранилище и фильтрация
После ручной модерации все принятые мемы сохраняются на сервер. Это временное хранилище: как только медиа публикуется в канал, файл сразу удаляется. Такой подход помогает держать диск в порядке и не захламлять его.
Я бы с радостью использовал что-нибудь более щадящее для хранения, но не нашёл подходящего варианта, который был бы таким же простым и автономным. Поэтому решил оставить всё на локальном SSD.
Перед тем как запускать систему, я обсудил это с ChatGPT 😄 — мы прикинули, т.к. в день будет проходить 10 медиафайлов, включая видео, что даёт примерно 50 МБ записи в сутки. Тесты это подтвердили.
И что получается?
Если считать, что обычный бытовой SSD на 500 ГБ рассчитан на ~150 TBW (терабайт записи за весь срок службы), то при такой нагрузке диск будет жить более 8600 лет 😄
Так что, похоже, можно особо не париться.

5. Планирование и расписание публикаций
Публикация мемов в канал происходит по чёткому и продуманному расписанию, чтобы не перегружать ленту, но и не пропадать из поля зрения подписчиков.
Фиксированные посты (жёстко заданные таймслоты):
🕘 9:15 — утренний мем, чтобы начать день с улыбки
🕐 13:00 — обеденный, чтобы развеяться во время перерыва
🕕 18:00 — вечерний мем, чтобы закончить рабочий день с настроением
Случайные посты: Кроме фиксированных постов, система публикует ещё остальные 7 мемов в случайное время в интервале с 10:00 до 22:00. Это добавляет элемент неожиданности и держит подписчиков в тонусе.
Вся эта логика реализована в виде скрипта с таймером, который проверяет, не пора ли выложить новый мем, и если да — берёт следующий из очереди.

6. Логика автоматизации
Вся система построена вокруг одного Telegram-бота-админа, через которого я управляю всем процессом: от парсинга до публикации. Более того — любой желающий может прислать ему мем, если хочет, чтобы тот попал в канал.
Как работает процесс:
Старт:Я нажимаю кнопку в боте — и начинается парсинг новых мемов из всех источников.
Модерация:Бот поочерёдно присылает мне картинки (одна за другой), и я решаю: ✅ принять или ❌ отклонить. Цель — собрать 10 мемов на день.
Формирование расписания:После отбора бот автоматически составляет расписание на весь день, включая жёсткие слоты и случайные таймслоты.
Публикация:Мемы публикуются строго по графику — всё автоматизировано, а я могу просто наблюдать и наслаждаться результатом.
Это всё позволяет держать канал активным, не тратя кучу времени каждый день. Один сеанс модерации утром — и весь день расписан.
7. Подписывайся, делись и участвуй
Канал с мемами я сделал закрытым, однако под каждым постом есть ссылка на вступление — если кому-то понравился мем, он легко может перейти и подписаться. Это пока временное решение, потому что, к сожалению, я не нашёл удобного способа отследить трафик, приходящий именно с постов внутри Telegram.
Если тебе зашла идея и ты кайфанул от мемов — поделись каналом с друзьями, которые тоже варятся в IT и любят хороший юмор. Давайте соберём комьюнити, которое будет не только смотреть, но и делиться своими находками.
У тебя есть идеи, как можно улучшить автоматизацию или добавить что-то новое?
Пиши мне, предлагай — я всегда открыт к улучшениям и с удовольствием реализую интересные фичи.
Подписаться на канал c мемами: https://t.me/+3BvXBuEsiqI4MzIy