findFilms/run_telegram_bot.py
vrubelroman bc461d36a6 Подключили Telegram бот с полной функциональностью
- Создан полнофункциональный Telegram бот для поиска фильмов и торрентов
- Бот дублирует всю функциональность веб-интерфейса
- Реализован поиск фильмов через TMDB API с постерами
- Добавлен поиск торрентов на всех трекерах (RuTracker, Kinozal, RuTor, NoNameClub)
- Автоматическое добавление торрентов в qBittorrent
- Интерактивные кнопки для выбора фильмов и торрентов
- Обработка ошибок и пользовательских состояний
- Docker контейнеризация с правильной сетевой конфигурацией
- Увеличен таймаут HTTP запросов до 60 секунд
- Добавлена документация и скрипты запуска

Команды бота:
- /start, /help - справка
- /find - начать поиск фильма

Файлы:
- telegram_bot.py - основной код бота
- run_telegram_bot.py - скрипт запуска
- Dockerfile.telegram - Docker образ для бота
- docker-compose.yml - обновлен с сервисом бота
- requirements.txt - добавлена зависимость python-telegram-bot
- README.md - обновлена документация
- PROJECT_SUMMARY.md - полная сводка проекта
2025-10-09 12:39:19 +03:00

37 lines
908 B
Python

#!/usr/bin/env python3
"""
Скрипт для запуска Telegram бота
"""
import os
import sys
import asyncio
import logging
from telegram_bot import MovieSearchBot
# Настройка логирования
logging.basicConfig(
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s',
level=logging.INFO
)
logger = logging.getLogger(__name__)
def main():
"""Главная функция запуска бота"""
try:
logger.info("Starting Movie Search Telegram Bot...")
# Создаем и запускаем бота
bot = MovieSearchBot()
# Запускаем бота
asyncio.run(bot.run())
except KeyboardInterrupt:
logger.info("Bot stopped by user")
except Exception as e:
logger.error(f"Error running bot: {e}")
sys.exit(1)
if __name__ == "__main__":
main()