mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-07-09 22:43:44 +08:00
fix(zspace): fall back to Users/{uid}/Views for virtual folders
This commit is contained in:
@@ -145,7 +145,14 @@ class ZSpace:
|
|||||||
|
|
||||||
def get_virtual_folders(self) -> List[dict]:
|
def get_virtual_folders(self) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
获取极影视媒体库所有路径列表(包含共享路径)
|
获取极影视媒体库所有路径列表(包含共享路径)。
|
||||||
|
|
||||||
|
极影视当前 Emby 兼容层(`System/Info` 返回 ServerVersion=4.7.0.0,
|
||||||
|
对齐 Emby Server 4.7 协议)未实现 `Library/VirtualFolders/Query`
|
||||||
|
(实测 404),且 `Users/{uid}/Views` 与 `Users/{uid}/Items` 返回里
|
||||||
|
`Path` 均为空字符串,因此该端点不可用时仅能给出"库 Id/Name + 空路径
|
||||||
|
列表"。下游 `get_user_library_folders()` 会跳过空 Path 的库,等价于
|
||||||
|
对所有库都不做路径前缀过滤——这是当前可用的最小可工作策略。
|
||||||
"""
|
"""
|
||||||
if not self._host or not self._apikey:
|
if not self._host or not self._apikey:
|
||||||
return []
|
return []
|
||||||
@@ -173,12 +180,20 @@ class ZSpace:
|
|||||||
'Path': library_paths
|
'Path': library_paths
|
||||||
})
|
})
|
||||||
return libraries
|
return libraries
|
||||||
else:
|
logger.debug("Library/VirtualFolders/Query 未获取到返回数据,回退到 Users/{uid}/Views(路径列表为空)")
|
||||||
logger.error("Library/VirtualFolders/Query 未获取到返回数据")
|
|
||||||
return []
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.error(f"连接Library/VirtualFolders/Query 出错:{e}")
|
logger.debug(f"连接Library/VirtualFolders/Query 出错:{e},回退到 Users/{{uid}}/Views(路径列表为空)")
|
||||||
return []
|
libraries = []
|
||||||
|
for view in self.__get_library_views() or []:
|
||||||
|
view_id = view.get("Id")
|
||||||
|
view_name = view.get("Name")
|
||||||
|
if view_id and view_name:
|
||||||
|
libraries.append({
|
||||||
|
'Id': view_id,
|
||||||
|
'Name': view_name,
|
||||||
|
'Path': []
|
||||||
|
})
|
||||||
|
return libraries
|
||||||
|
|
||||||
def __get_library_views(self, username: Optional[str] = None) -> List[dict]:
|
def __get_library_views(self, username: Optional[str] = None) -> List[dict]:
|
||||||
"""
|
"""
|
||||||
|
|||||||
Reference in New Issue
Block a user