添加本地/在线图床切换功能,优化上传图片逻辑以支持选择服务器
This commit is contained in:
parent
457b37e7c7
commit
85dd93ffe6
@ -11,11 +11,14 @@ import shutil
|
||||
|
||||
# 配置信息
|
||||
local_image_folder = 'downloaded_images'
|
||||
#lsky_pro_url = 'http://192.168.107.248:18089/api/v1'
|
||||
lsky_pro_url_local = 'http://192.168.107.248:18089/api/v1'
|
||||
lsky_pro_url = 'https://image.lqsjy.cn/api/v1'
|
||||
upload_endpoint = '/upload'
|
||||
token = '1|QJP2YEr9GIN52VBgmm5hCqV5DwBSvJLUKjnwcKB8'
|
||||
|
||||
# 添加全局变量控制使用本地/在线图床
|
||||
use_local_server = True
|
||||
|
||||
# 确保本地图片文件夹存在
|
||||
#os.makedirs(local_image_folder, exist_ok=True)
|
||||
def get_image_folder(markdown_path):
|
||||
@ -155,7 +158,12 @@ def upload_image_to_lsky_pro(image_path, retries=3, timeout=30):
|
||||
'Authorization': f'Bearer {token}',
|
||||
'Accept': 'application/json'
|
||||
}
|
||||
response = requests.post(f'{lsky_pro_url}{upload_endpoint}', files=files, headers=headers, timeout=timeout)
|
||||
# 根据复选框状态选择URL
|
||||
current_url = lsky_pro_url_local if use_local_server else lsky_pro_url
|
||||
response = requests.post(f'{current_url}{upload_endpoint}',
|
||||
files=files,
|
||||
headers=headers,
|
||||
timeout=timeout)
|
||||
if response.status_code == 200:
|
||||
try:
|
||||
data = response.json()
|
||||
@ -193,7 +201,10 @@ def process_image_file(markdown_file_path):
|
||||
|
||||
|
||||
# 上传到图床
|
||||
new_url = upload_image_to_lsky_pro(url)
|
||||
if ":" in url:
|
||||
new_url = upload_image_to_lsky_pro(url)
|
||||
else:
|
||||
new_url = upload_image_to_lsky_pro(os.path.dirname(markdown_file_path)+"//"+url)
|
||||
if new_url:
|
||||
url_mapping[url] = new_url
|
||||
print(f"处理成功: {url} -> {new_url}")
|
||||
@ -379,6 +390,19 @@ def select_files():
|
||||
root = tk.Tk()
|
||||
root.title("Markdown图片处理工具")
|
||||
|
||||
def toggle_server():
|
||||
global use_local_server
|
||||
use_local_server = use_local_var.get()
|
||||
print(f"使用{'本地' if use_local_server else '在线'}服务器")
|
||||
|
||||
# 添加复选框
|
||||
use_local_var = tk.BooleanVar(value=True) # 默认使用本地服务器
|
||||
use_local_checkbox = tk.Checkbutton(root,
|
||||
text="使用本地服务器",
|
||||
variable=use_local_var,
|
||||
command=toggle_server)
|
||||
use_local_checkbox.grid(row=5, column=0, columnspan=3, pady=5)
|
||||
|
||||
# 文件路径显示
|
||||
tk.Label(root, text="Input File:").grid(row=0, column=0, padx=10, pady=10)
|
||||
input_file_entry = tk.Entry(root, width=50)
|
||||
@ -389,9 +413,9 @@ tk.Button(root, text="Browse", command=choose_input_file).grid(row=0, column=2,
|
||||
download_button = tk.Button(root, text="下载图片", command=download_images)
|
||||
download_button.grid(row=1, column=0, columnspan=3, pady=5)
|
||||
|
||||
# 上传图片按钮
|
||||
upload_button = tk.Button(root, text="上传图片", command=upload_images)
|
||||
upload_button.grid(row=2, column=0, columnspan=3, pady=5)
|
||||
# # 上传图片按钮
|
||||
# upload_button = tk.Button(root, text="上传图片", command=upload_images)
|
||||
# upload_button.grid(row=2, column=0, columnspan=3, pady=5)
|
||||
|
||||
# 上传图片按钮_batch_files
|
||||
# upload_button = tk.Button(root, text="上传图片_批量", command=upload_images_batch_files)
|
||||
|
Loading…
x
Reference in New Issue
Block a user