mirror of
https://github.com/maxdorninger/MediaManager.git
synced 2026-02-19 15:35:18 -05:00
fix tvdb search not working
This commit is contained in:
@@ -1,7 +1,6 @@
|
||||
import requests
|
||||
import logging
|
||||
|
||||
|
||||
import media_manager.metadataProvider.utils
|
||||
from media_manager.config import MediaManagerConfig
|
||||
from media_manager.metadataProvider.abstractMetaDataProvider import (
|
||||
@@ -11,7 +10,6 @@ from media_manager.metadataProvider.schemas import MetaDataProviderSearchResult
|
||||
from media_manager.tv.schemas import Episode, Season, Show, SeasonNumber
|
||||
from media_manager.movies.schemas import Movie
|
||||
|
||||
|
||||
log = logging.getLogger(__name__)
|
||||
|
||||
|
||||
@@ -174,8 +172,11 @@ class TvdbMetadataProvider(AbstractMetadataProvider):
|
||||
|
||||
formatted_results.append(
|
||||
MetaDataProviderSearchResult(
|
||||
poster_path=result["image"],
|
||||
overview=result["overview"],
|
||||
poster_path="https://artworks.thetvdb.com"
|
||||
+ result.get("image")
|
||||
if result.get("image")
|
||||
else None,
|
||||
overview=result.get("overview"),
|
||||
name=result["name"],
|
||||
external_id=result["id"],
|
||||
year=year,
|
||||
@@ -191,35 +192,7 @@ class TvdbMetadataProvider(AbstractMetadataProvider):
|
||||
def search_movie(
|
||||
self, query: str | None = None
|
||||
) -> list[MetaDataProviderSearchResult]:
|
||||
if query is None:
|
||||
results = self.__get_trending_movies()
|
||||
results = results[0:20]
|
||||
log.debug(f"got {len(results)} results from TVDB search")
|
||||
formatted_results = []
|
||||
for result in results:
|
||||
result = self.__get_movie(result["id"])
|
||||
try:
|
||||
try:
|
||||
year = result["year"]
|
||||
except KeyError:
|
||||
year = None
|
||||
|
||||
formatted_results.append(
|
||||
MetaDataProviderSearchResult(
|
||||
poster_path=result["image"],
|
||||
overview="TVDB does not provide overviews",
|
||||
name=result["name"],
|
||||
external_id=result["id"],
|
||||
year=year,
|
||||
metadata_provider=self.name,
|
||||
added=False,
|
||||
vote_average=None,
|
||||
)
|
||||
)
|
||||
except Exception as e:
|
||||
log.warning(f"Error processing search result: {e}")
|
||||
return formatted_results
|
||||
else:
|
||||
if query:
|
||||
results = self.__search_movie(query=query)
|
||||
results = results[0:20]
|
||||
log.debug(f"got {len(results)} results from TVDB search")
|
||||
@@ -238,8 +211,8 @@ class TvdbMetadataProvider(AbstractMetadataProvider):
|
||||
|
||||
formatted_results.append(
|
||||
MetaDataProviderSearchResult(
|
||||
poster_path=result["image_url"],
|
||||
overview="TVDB does not provide overviews",
|
||||
poster_path=result.get("image_url"),
|
||||
overview=result.get("overview"),
|
||||
name=result["name"],
|
||||
external_id=result["tvdb_id"],
|
||||
year=year,
|
||||
@@ -251,6 +224,37 @@ class TvdbMetadataProvider(AbstractMetadataProvider):
|
||||
except Exception as e:
|
||||
log.warning(f"Error processing search result: {e}")
|
||||
return formatted_results
|
||||
else:
|
||||
results = self.__get_trending_movies()
|
||||
results = results[0:20]
|
||||
log.debug(f"got {len(results)} results from TVDB search")
|
||||
formatted_results = []
|
||||
for result in results:
|
||||
result = self.__get_movie(result["id"])
|
||||
try:
|
||||
try:
|
||||
year = result["year"]
|
||||
except KeyError:
|
||||
year = None
|
||||
|
||||
formatted_results.append(
|
||||
MetaDataProviderSearchResult(
|
||||
poster_path="https://artworks.thetvdb.com"
|
||||
+ result.get("image")
|
||||
if result.get("image")
|
||||
else None,
|
||||
overview=result.get("overview"),
|
||||
name=result["name"],
|
||||
external_id=result["id"],
|
||||
year=year,
|
||||
metadata_provider=self.name,
|
||||
added=False,
|
||||
vote_average=None,
|
||||
)
|
||||
)
|
||||
except Exception as e:
|
||||
log.warning(f"Error processing search result: {e}")
|
||||
return formatted_results
|
||||
|
||||
def download_movie_poster_image(self, movie: Movie) -> bool:
|
||||
movie_metadata = self.__get_movie(movie.external_id)
|
||||
|
||||
Reference in New Issue
Block a user