test!!! tmdb в отдельный севрис
This commit is contained in:
parent
b30c688bbe
commit
93b2e7d4cb
9 changed files with 172 additions and 26 deletions
19
app.py
19
app.py
|
|
@ -24,9 +24,8 @@ app.add_middleware(
|
|||
# Настройка шаблонов
|
||||
templates = Jinja2Templates(directory="templates")
|
||||
|
||||
# API ключ TMDB
|
||||
TMDB_API_KEY = os.getenv("TMDB_API_KEY", "6d58225585fb77af5945a964de41849f")
|
||||
TMDB_BASE_URL = "https://api.themoviedb.org/3"
|
||||
# URL прокси-сервиса TMDB
|
||||
TMDB_PROXY_URL = os.getenv("TMDB_PROXY_URL", "http://localhost:8001")
|
||||
|
||||
# URL torAPI
|
||||
TORAPI_URL = os.getenv("TORAPI_URL", "http://localhost:8088")
|
||||
|
|
@ -36,13 +35,12 @@ TORRENT_SEARCH_URL = os.getenv("TORRENT_SEARCH_URL", "http://localhost:8443")
|
|||
TORRENT_ADD_URL = os.getenv("TORRENT_ADD_URL", "http://localhost:8444")
|
||||
|
||||
async def search_movies(query: str) -> dict:
|
||||
"""Поиск фильмов через TMDB API"""
|
||||
"""Поиск фильмов через TMDB Proxy"""
|
||||
async with httpx.AsyncClient() as client:
|
||||
try:
|
||||
response = await client.get(
|
||||
f"{TMDB_BASE_URL}/search/movie",
|
||||
f"{TMDB_PROXY_URL}/search/movie",
|
||||
params={
|
||||
"api_key": TMDB_API_KEY,
|
||||
"query": query,
|
||||
"language": "ru-RU",
|
||||
"include_adult": False
|
||||
|
|
@ -51,16 +49,15 @@ async def search_movies(query: str) -> dict:
|
|||
response.raise_for_status()
|
||||
return response.json()
|
||||
except httpx.HTTPError as e:
|
||||
raise HTTPException(status_code=500, detail=f"TMDB API error: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"TMDB Proxy error: {str(e)}")
|
||||
|
||||
async def get_movie_details(movie_id: int) -> dict:
|
||||
"""Получение детальной информации о фильме из TMDB"""
|
||||
"""Получение детальной информации о фильме из TMDB через прокси"""
|
||||
async with httpx.AsyncClient() as client:
|
||||
try:
|
||||
response = await client.get(
|
||||
f"{TMDB_BASE_URL}/movie/{movie_id}",
|
||||
f"{TMDB_PROXY_URL}/movie/{movie_id}",
|
||||
params={
|
||||
"api_key": TMDB_API_KEY,
|
||||
"language": "ru-RU",
|
||||
"append_to_response": "external_ids"
|
||||
}
|
||||
|
|
@ -68,7 +65,7 @@ async def get_movie_details(movie_id: int) -> dict:
|
|||
response.raise_for_status()
|
||||
return response.json()
|
||||
except httpx.HTTPError as e:
|
||||
raise HTTPException(status_code=500, detail=f"TMDB API error: {str(e)}")
|
||||
raise HTTPException(status_code=500, detail=f"TMDB Proxy error: {str(e)}")
|
||||
|
||||
def parse_size(size_str: str) -> tuple:
|
||||
"""Парсинг размера файла и возврат в байтах и читаемом виде"""
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue