fix api模式支持启用https

This commit is contained in:
thsrite
2024-04-10 18:20:48 +08:00
parent 4924264666
commit 6ba76f2bcb
3 changed files with 31 additions and 8 deletions

View File

@@ -11,7 +11,7 @@ MoviePilot三方插件市场https://github.com/thsrite/MoviePilot-Plugins/
- 站点数据统计 1.4 (无未读消息版本)(废弃)
- 站点未读消息 1.4
- [云盘Strm生成 3.6](docs%2FCloudStrm.md)
- [云盘Strm生成 3.7](docs%2FCloudStrm.md)
- [Strm文件模式转换 1.0](docs%2FStrmConvert.md)
- 清理订阅缓存 1.0
- 添加种子下载 1.0

View File

@@ -2,11 +2,12 @@
"CloudStrm": {
"name": "云盘Strm生成",
"description": "监控文件创建生成Strm文件。",
"version": "3.6",
"version": "3.7",
"icon": "https://raw.githubusercontent.com/thsrite/MoviePilot-Plugins/main/icons/create.png",
"author": "thsrite",
"level": 1,
"history": {
"v3.7": "api模式支持启用https",
"v3.6": "支持重建索引周期运行",
"v3.4": "交互命令",
"v3.1": "注册交互命令、注册公共服务",

View File

@@ -26,7 +26,7 @@ class CloudStrm(_PluginBase):
# 插件图标
plugin_icon = "https://raw.githubusercontent.com/thsrite/MoviePilot-Plugins/main/icons/create.png"
# 插件版本
plugin_version = "3.6"
plugin_version = "3.7"
# 插件作者
plugin_author = "thsrite"
# 作者主页
@@ -46,6 +46,7 @@ class CloudStrm(_PluginBase):
_onlyonce = False
_copy_files = False
_rebuild = False
_https = False
_observer = []
_video_formats = ('.mp4', '.avi', '.rmvb', '.wmv', '.mov', '.mkv', '.flv', '.ts', '.webm', '.iso', '.mpg', '.m2ts')
__cloud_files_json = "cloud_files.json"
@@ -75,6 +76,7 @@ class CloudStrm(_PluginBase):
self._rebuild_cron = config.get("rebuild_cron")
self._onlyonce = config.get("onlyonce")
self._rebuild = config.get("rebuild")
self._https = config.get("https")
self._copy_files = config.get("copy_files")
self._monitor_confs = config.get("monitor_confs")
@@ -341,7 +343,8 @@ class CloudStrm(_PluginBase):
# 视频文件创建.strm文件
if dest_file.lower().endswith(self._video_formats):
# 创建.strm文件
self.__create_strm_file(dest_file=dest_file,
self.__create_strm_file(scheme="https" if self._https else "http",
dest_file=dest_file,
dest_dir=dest_dir,
source_file=source_file,
library_dir=library_dir,
@@ -359,7 +362,8 @@ class CloudStrm(_PluginBase):
@staticmethod
def __create_strm_file(dest_file: str, dest_dir: str, source_file: str, library_dir: str = None,
cloud_type: str = None, cloud_path: str = None, cloud_url: str = None):
cloud_type: str = None, cloud_path: str = None, cloud_url: str = None,
scheme: str = None):
"""
生成strm文件
:param library_dir:
@@ -394,10 +398,10 @@ class CloudStrm(_PluginBase):
dest_file = urllib.parse.quote(dest_file, safe='')
if str(cloud_type) == "cd2":
# 将路径的开头盘符"/mnt/user/downloads"替换为"http://localhost:19798/static/http/localhost:19798/False/"
dest_file = f"http://{cloud_url}/static/http/{cloud_url}/False/{dest_file}"
dest_file = f"{scheme}://{cloud_url}/static/{scheme}/{cloud_url}/False/{dest_file}"
logger.info(f"替换后cd2路径:::{dest_file}")
elif str(cloud_type) == "alist":
dest_file = f"http://{cloud_url}/d/{dest_file}"
dest_file = f"{scheme}://{cloud_url}/d/{dest_file}"
logger.info(f"替换后alist路径:::{dest_file}")
else:
logger.error(f"云盘类型 {cloud_type} 错误")
@@ -425,6 +429,7 @@ class CloudStrm(_PluginBase):
"onlyonce": self._onlyonce,
"rebuild": self._rebuild,
"copy_files": self._copy_files,
"https": self._https,
"cron": self._cron,
"monitor_confs": self._monitor_confs
})
@@ -601,7 +606,7 @@ class CloudStrm(_PluginBase):
'component': 'VCol',
'props': {
'cols': 12,
'md': 6
'md': 4
},
'content': [
{
@@ -613,6 +618,22 @@ class CloudStrm(_PluginBase):
}
]
},
{
'component': 'VCol',
'props': {
'cols': 12,
'md': 4
},
'content': [
{
'component': 'VSwitch',
'props': {
'model': 'https',
'label': '启用https',
}
}
]
},
]
},
{
@@ -713,6 +734,7 @@ class CloudStrm(_PluginBase):
"onlyonce": False,
"rebuild": False,
"copy_files": False,
"https": False,
"monitor_confs": ""
}