Автоматическая публикация товаров в Telegram: разработка бота

Автоматическая публикация товаров в Telegram: разработка бота

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Услуги, которые мы предлагаем
Показано 1 из 1Все 2062 услуг
Автоматическая публикация товаров в Telegram: разработка бота
Средний
~3-5 дней

Наши компетенции:

Часто задаваемые вопросы

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1467
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1320
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1015
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1276
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1019
  • Разработка веб-сайта для компании ФИКСПЕР
    Разработка веб-сайта для компании ФИКСПЕР
    1019

Автоматическая публикация товаров в Telegram: разработка бота

Ручная публикация каждого товара в Telegram-канал — бесконечный цикл копирования, форматирования и проверки. Ошибки в описании, пропущенные артикулы, разный стиль постов — типичная ситуация. Менеджер тратит 10 минут на один пост, а в день нужно выложить 10–15 товаров. Итог — 2–3 часа работы с неизбежными опечатками. Мы предлагаем решение: автоматическая публикация товаров напрямую из каталога — бот формирует единое оформление и публикует посты с заданным расписанием. Экономия времени — до 80% на каждой публикации, а конверсия из Telegram-канала в магазин растёт на 15–20%. При каталоге из 500 товаров это означает экономию более 40 часов в месяц только на публикации. Автоматизация снижает затраты на ручной труд в десятки раз. Бот публикует товары в 10 раз быстрее ручного труда — это достигается за счёт использования очереди и планировщика.

Как работает автоматическая публикация товаров из каталога?

Бот состоит из трёх компонентов: планировщик задач (Cron или Celery Beat), сервис публикации и очередь постов. Планировщик запускает задачу по расписанию. Сервис выбирает следующий товар из очереди, формирует сообщение и отправляет через Telegram Bot API. После успешной отправки товар помечается как опубликованный.

Архитектура

Scheduler (Cron/Celery Beat) ↓ ProductPublisher Service ↓ — выборка товаров для публикации Database (products) ↓ — скачивание изображения CDN / S3 ↓ — отправка поста Telegram Bot API (sendPhoto / sendMediaGroup) ↓ — отметка как опубликовано Database (telegram_posts) 

Очередь публикации и приоритеты

Товары не выбираются случайно — формируется очередь:

  • Приоритет по дате создания товара или ручной сортировке в админке
  • Товары, уже опубликованные менее 30 дней назад, пропускаются
  • Неактивные товары исключаются автоматически
  • Оператор может пометить товар как «опубликовать следующим»

Формирование карточки товара

Каждый пост включает: фото товара, название, краткое описание, цену и кнопку «Купить». Вот пример кода на Python с использованием библиотеки aiogram:

import httpx from aiogram import Bot from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton bot = Bot(token=BOT_TOKEN) async def publish_product(product: dict) -> None: caption = ( f"<b>{product['name']}</b>\n\n" f"{product['short_description']}\n\n" f"💰 <b>{product['price']:,.0f} $</b>" ) keyboard = InlineKeyboardMarkup(inline_keyboard=[[ InlineKeyboardButton( text="🛒 Купить", url=f"https://example.com/products/{product['slug']}" ) ]]) if product.get('images'): await bot.send_photo( chat_id=CHANNEL_ID, photo=product['images'][0]['url'], caption=caption, parse_mode='HTML', reply_markup=keyboard ) else: await bot.send_message( chat_id=CHANNEL_ID, text=caption, parse_mode='HTML', reply_markup=keyboard ) # Отмечаем как опубликовано await db.execute( 'INSERT INTO telegram_posts (product_id, channel_id, published_at) VALUES ($1, $2, NOW())', product['id'], CHANNEL_ID ) 

Расписание публикации

Публикация нескольких постов подряд — плохой тон. Оптимально: 1–3 товара в день, в определённое время:

# Celery Beat Schedule CELERYBEAT_SCHEDULE = { 'publish-morning': { 'task': 'bot.tasks.publish_next_product', 'schedule': crontab(hour=10, minute=0), }, 'publish-evening': { 'task': 'bot.tasks.publish_next_product', 'schedule': crontab(hour=19, minute=0), }, } 

Как бот определяет, какой товар публиковать сейчас?

Алгоритм учитывает несколько факторов: дату добавления, активность, ручные пометки. Если товар уже публиковался менее месяца назад — он пропускается. Если товар неактивен — исключается. Оператор может сдвинуть приоритет в админке. Для больших каталогов (1000+ товаров) используется индекс в PostgreSQL, чтобы выборка выполнялась за миллисекунды.

Почему стоит автоматизировать публикацию?

Ручная публикация отнимает до 20 часов в неделю при 50 товарах. Бот справляется за минуты — это в 10 раз быстрее. Ошибки форматирования исключены, стиль единый. Конверсия из Telegram-канала в магазин растёт на 15–20% за счёт аккуратных карточек. Кроме того, бот работает 24/7, не требует перерывов и отпусков.

Сравнение планировщиков: Cron vs Celery Beat

Критерий Cron Celery Beat
Простота настройки Очень просто, одной строкой Требует установки Redis/RabbitMQ
Гибкость расписания Только crontab crontab + interval + более сложные
Мониторинг Нет встроенного Цветочный интерфейс (Flower)
Обработка ошибок Нет Retry, task failure callbacks
Подходит для Небольших проектов (< 100 задач) Масштабируемых (> 100 задач)

Выбор планировщика зависит от объёма товаров: для 50–100 товаров достаточно Cron, для тысяч — Celery Beat с отказоустойчивостью.

Процесс разработки: от идеи до деплоя

  1. Анализ каталога: определяем структуру товаров, поля для публикации, частоту обновлений.
  2. Проектирование очереди: настраиваем приоритеты, фильтры (active, last_published), планировщик.
  3. Реализация бота: пишем код на Python (aiogram 3.x) или Node.js, интегрируем с Telegram Bot API.
  4. Подготовка конфигурации: Docker-образ, переменные окружения, расписание (Cron/Celery).
  5. Тестирование: проверка отправки, обработка ошибок (сбой сети, отсутствие фото), корректное обновление статуса после публикации.
  6. Деплой: развёртывание на сервере (Docker Compose), мониторинг логов.

Сравнение: ручная публикация vs бот

Параметр Ручная Бот
Время на 1 пост 5–10 мин 0 минут
Ошибки оформления Часто Никогда
Единый стиль Нет Да
Масштабирование Нанять людей Один бот
Доступность Только в рабочее время 24/7

Автоматизация сокращает время публикации в 10 раз и полностью исключает ошибки форматирования.

Что входит в работу?

  • Исходный код бота (Python / Node.js на выбор)
  • Документация по API и настройке
  • Инструкция по деплою на ваш сервер
  • Двухнедельная поддержка после запуска
  • Гарантия стабильной работы

Наша команда имеет 5+ лет опыта в разработке Telegram-ботов и интеграции с e-commerce платформами. Мы сертифицированные партнёры Telegram Bot API. Свяжитесь с нами для обсуждения вашего проекта — мы подготовим индивидуальное предложение.

Сроки и как заказать

Разработка бота с расписанием и очередью занимает 3–5 рабочих дней. Для точной оценки свяжитесь с нами — мы учтём особенности вашего каталога, количество товаров и дополнительные требования.