Merge remote-tracking branch 'origin/main'

This commit is contained in:
jxxghp 2023-11-01 10:08:47 +08:00
commit e35838c326
4 changed files with 20 additions and 9 deletions

View File

@ -121,7 +121,10 @@ class ChainBase(metaclass=ABCMeta):
:return: 识别的媒体信息包括剧集信息
"""
if not tmdbid and hasattr(meta, "tmdbid"):
# 识别用名中含指定信息情形
tmdbid = meta.tmdbid
if not mtype and meta.type in [MediaType.TV, MediaType.MOVIE]:
mtype = meta.type
return self.run_module("recognize_media", meta=meta, mtype=mtype, tmdbid=tmdbid)
def match_doubaninfo(self, name: str, imdbid: str = None,

View File

@ -244,7 +244,7 @@ class Emby(metaclass=Singleton):
"&Limit=10"
"&IncludeSearchTypes=false"
"&api_key=%s") % (
self._host, name, self._apikey)
self._host, name, self._apikey)
try:
res = RequestUtils().get_res(req_url)
if res:
@ -803,7 +803,9 @@ class Emby(metaclass=Singleton):
logger.debug(f"接收到emby webhook{message}")
eventItem = schemas.WebhookEventInfo(event=eventType, channel="emby")
if message.get('Item'):
if message.get('Item', {}).get('Type') == 'Episode':
if message.get('Item', {}).get('Type') == 'Episode' \
or message.get('Item', {}).get('Type') == 'Series' \
or message.get('Item', {}).get('Type') == 'Season':
eventItem.item_type = "TV"
if message.get('Item', {}).get('SeriesName') \
and message.get('Item', {}).get('ParentIndexNumber') \
@ -813,6 +815,10 @@ class Emby(metaclass=Singleton):
"S" + str(message.get('Item', {}).get('ParentIndexNumber')),
"E" + str(message.get('Item', {}).get('IndexNumber')),
message.get('Item', {}).get('Name'))
elif message.get('Item', {}).get('SeriesName'):
eventItem.item_name = "%s %s" % (
message.get('Item', {}).get('SeriesName'),
message.get('Item', {}).get('Name'))
else:
eventItem.item_name = message.get('Item', {}).get('Name')
eventItem.item_id = message.get('Item', {}).get('SeriesId')

View File

@ -212,7 +212,7 @@ class Jellyfin(metaclass=Singleton):
return None
req_url = ("%sUsers/%s/Items?"
"api_key=%s&searchTerm=%s&IncludeItemTypes=Series&Limit=10&Recursive=true") % (
self._host, self.user, self._apikey, name)
self._host, self.user, self._apikey, name)
try:
res = RequestUtils().get_res(req_url)
if res:
@ -227,8 +227,8 @@ class Jellyfin(metaclass=Singleton):
return None
return ""
def get_movies(self,
title: str,
def get_movies(self,
title: str,
year: str = None,
tmdb_id: int = None) -> Optional[List[schemas.MediaServerItem]]:
"""
@ -242,7 +242,7 @@ class Jellyfin(metaclass=Singleton):
return None
req_url = ("%sUsers/%s/Items?"
"api_key=%s&searchTerm=%s&IncludeItemTypes=Movie&Limit=10&Recursive=true") % (
self._host, self.user, self._apikey, title)
self._host, self.user, self._apikey, title)
try:
res = RequestUtils().get_res(req_url)
if res:
@ -466,7 +466,9 @@ class Jellyfin(metaclass=Singleton):
eventItem.device_name = message.get('DeviceName')
eventItem.user_name = message.get('NotificationUsername')
eventItem.client = message.get('ClientName')
if message.get("ItemType") == "Episode":
if message.get("ItemType") == "Episode" \
or message.get("ItemType") == "Series" \
or message.get("ItemType") == "Season":
# 剧集
eventItem.item_type = "TV"
eventItem.season_id = message.get('SeasonNumber')

View File

@ -729,12 +729,12 @@ class MediaSyncDel(_PluginBase):
查询转移记录
"""
# 季数
if season_num and season_num.isdigit():
if season_num and str(season_num).isdigit():
season_num = str(season_num).rjust(2, '0')
else:
season_num = None
# 集数
if episode_num and episode_num.isdigit():
if episode_num and str(episode_num).isdigit():
episode_num = str(episode_num).rjust(2, '0')
else:
episode_num = None