From 02adc9fc66a808635c43752e9752a28a7cc724a1 Mon Sep 17 00:00:00 2001 From: jxxghp Date: Sun, 8 Jun 2025 21:35:30 +0800 Subject: [PATCH] fix TmdbWallpaper --- package.json | 3 ++- plugins/tmdbwallpaper/__init__.py | 17 +++++++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index a1b6e2d..299dc7c 100644 --- a/package.json +++ b/package.json @@ -834,12 +834,13 @@ "name": "登录壁纸本地化", "description": "将MoviePilot的登录壁纸下载到本地。", "labels": "工具", - "version": "1.3", + "version": "1.4", "icon": "Macos_Sierra.png", "author": "jxxghp", "level": 1, "v2": true, "history": { + "v1.4": "修复Bing壁纸命名问题", "v1.3": "适配MoviePilot v2.5.3+版本", "v1.2": "一次性下载多张壁纸", "v1.1": "修复下载Bing每日壁纸时文件名错乱的问题" diff --git a/plugins/tmdbwallpaper/__init__.py b/plugins/tmdbwallpaper/__init__.py index 300a77e..7a6ac13 100644 --- a/plugins/tmdbwallpaper/__init__.py +++ b/plugins/tmdbwallpaper/__init__.py @@ -1,6 +1,7 @@ from datetime import datetime, timedelta from pathlib import Path from typing import Any, List, Dict, Tuple +from urllib.parse import urlparse import pytz from apscheduler.schedulers.background import BackgroundScheduler @@ -20,7 +21,7 @@ class TmdbWallpaper(_PluginBase): # 插件图标 plugin_icon = "Macos_Sierra.png" # 插件版本 - plugin_version = "1.3" + plugin_version = "1.4" # 插件作者 plugin_author = "jxxghp" # 作者主页 @@ -238,5 +239,17 @@ class TmdbWallpaper(_PluginBase): return urls = WallpaperHelper().get_wallpapers(10) or [] for url in urls: - filename = url.split("/")[-1] + if settings.WALLPAPER == "tmdb": + filename = url.split("/")[-1] + elif settings.WALLPAPER == "bing": + # https://cn.bing.com/th?id=OHR.EchinaceaButterfly_EN-US8404044892_1920x1080.jpg&rf=LaDigue_1920x1080.jpg&pid=hp + # 解析url参数,获取id的值 + url_params = urlparse(url) + filename = url_params.query.split("id=")[-1] + else: + # 其他壁纸类型,直接使用url的文件名 + filename = url.split("/")[-1] + # 没有后缀的文件名,添加.jpg后缀 + if not filename.endswith(".jpg"): + filename += ".jpg" __save_file(url, filename)