findFilms/README.md

127 lines
5 KiB
Markdown
Raw Normal View History

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