37 lines
986 B
Python
37 lines
986 B
Python
from typing import Optional, Tuple, Union
|
|
|
|
|
|
from app.core.config import settings
|
|
from app.log import logger
|
|
from app.modules import _ModuleBase
|
|
from app.modules.thetvdb import tvdbapi
|
|
|
|
|
|
class TheTvDbModule(_ModuleBase):
|
|
|
|
tvdb: tvdbapi.Tvdb = None
|
|
|
|
def init_module(self) -> None:
|
|
self.tvdb = tvdbapi.Tvdb(apikey=settings.TVDB_API_KEY,
|
|
cache=False,
|
|
select_first=True,
|
|
proxies=settings.PROXY)
|
|
|
|
def stop(self):
|
|
pass
|
|
|
|
def init_setting(self) -> Tuple[str, Union[str, bool]]:
|
|
pass
|
|
|
|
def tvdb_info(self, tvdbid: int) -> Optional[dict]:
|
|
"""
|
|
获取TVDB信息
|
|
:param tvdbid: int
|
|
:return: TVDB信息
|
|
"""
|
|
try:
|
|
logger.info(f"开始获取TVDB信息: {tvdbid} ...")
|
|
return self.tvdb[tvdbid].data
|
|
except Exception as err:
|
|
logger.error(f"获取TVDB信息失败: {err}")
|