# Movie Search API Проект для поиска фильмов с использованием The Movie Database (TMDB) API. ## Возможности - 🔍 Поиск фильмов по названию через TMDB API - 🎬 Отображение информации о фильмах (постер, описание, рейтинг) - 🔗 Поиск торрентов для выбранного фильма - 📊 Отображение детальной информации о торрентах (размер, разрешение, качество) - 🚀 Интеграция с torAPI для добавления торрентов в клиент - 🌐 Веб-интерфейс для удобного поиска - 📱 Адаптивный дизайн - 🐳 Запуск в Docker контейнере - 🔌 REST API для интеграции ## Запуск ### С помощью Docker Compose ```bash docker compose up --build -d ``` ### Доступ к приложению - **Веб-интерфейс**: http://localhost:8089 - **API**: http://localhost:8089/api/search/{название_фильма} ## API Endpoints ### GET / Главная страница с формой поиска ### POST /search Поиск фильмов через веб-форму **Параметры:** - `movie_title` (form) - название фильма для поиска ### GET /api/search/{movie_title} API endpoint для поиска фильмов **Параметры:** - `movie_title` (path) - название фильма для поиска ### GET /api/torrents/{movie_title} API endpoint для поиска торрентов фильма **Параметры:** - `movie_title` (path) - название фильма для поиска - `year` (query, optional) - год выпуска фильма ### GET /torrents/{movie_title} Страница с результатами поиска торрентов **Параметры:** - `movie_title` (path) - название фильма для поиска - `year` (query, optional) - год выпуска фильма **Пример ответа API торрентов:** ```json { "torrents": [ { "title": "Inception (2010) - 1080p - BluRay", "size_bytes": 2684354560, "size_readable": "2.5 GB", "resolution": "1080p", "quality": "BluRay", "seeds": 150, "peers": 25, "magnet": "magnet:?xt=urn:btih:example0", "download_url": "http://example.com/torrent0.torrent" } ], "movie_title": "Inception", "year": "2010" } ``` ## Конфигурация Приложение использует следующие переменные окружения: - `TMDB_API_KEY` - API ключ для TMDB (по умолчанию: 6d58225585fb77af5945a964de41849f) - `HOST` - хост для запуска (по умолчанию: 0.0.0.0) - `PORT` - порт для запуска (по умолчанию: 8000) ## Технологии - **FastAPI** - веб-фреймворк - **Jinja2** - шаблонизатор - **httpx** - HTTP клиент - **Docker** - контейнеризация - **TMDB API** - источник данных о фильмах ## Использование ### Поиск фильмов и торрентов 1. **Поиск фильма**: Введите название фильма на главной странице 2. **Выбор фильма**: Нажмите кнопку "🔍 Найти торренты" на понравившемся фильме 3. **Просмотр торрентов**: Изучите доступные торренты с информацией о размере, разрешении и качестве 4. **Скачивание**: Используйте кнопки для скачивания .torrent файла или magnet-ссылки 5. **Добавление в клиент**: Нажмите "Добавить в клиент" для автоматического добавления в qBittorrent ### Интеграция с torAPI Приложение интегрировано с вашим torAPI сервисом (порт 8088) для автоматического добавления торрентов в qBittorrent клиент. ## Структура проекта ``` searchTorrentDownl/ ├── app.py # Основное приложение ├── requirements.txt # Python зависимости ├── Dockerfile # Docker образ ├── docker-compose.yml # Docker Compose конфигурация ├── templates/ # HTML шаблоны │ ├── index.html # Главная страница │ ├── results.html # Страница результатов поиска фильмов │ ├── torrents.html # Страница результатов поиска торрентов │ └── error.html # Страница ошибок └── README.md # Документация ```