findFilms/README.md

126 lines
5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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 # Документация
```