diff --git a/dialogue_download_change.py b/dialogue_download_change.py index ea7373f..f1f9948 100644 --- a/dialogue_download_change.py +++ b/dialogue_download_change.py @@ -127,23 +127,51 @@ def download_images(): else: messagebox.showwarning("警告", "没有图片被下载") -def upload_image_to_lsky_pro(image_path): - """上传图片到Lsky Pro图床""" - with open(image_path, 'rb') as img_file: - files = {'file': img_file} - headers = { - 'Authorization': f'Bearer {token}', - 'Accept': 'application/json' - } - response = requests.post(f'{lsky_pro_url}{upload_endpoint}', files=files, headers=headers) - if response.status_code == 200: - try: - data = response.json() - if data['status']: - return data['data']['links']['url'] - except: - pass - return None +# def upload_image_to_lsky_pro(image_path): +# """上传图片到Lsky Pro图床""" +# with open(image_path, 'rb') as img_file: +# files = {'file': img_file} +# headers = { +# 'Authorization': f'Bearer {token}', +# 'Accept': 'application/json' +# } +# response = requests.post(f'{lsky_pro_url}{upload_endpoint}', files=files, headers=headers) +# if response.status_code == 200: +# try: +# data = response.json() +# if data['status']: +# return data['data']['links']['url'] +# except: +# pass +# return None + +def upload_image_to_lsky_pro(image_path, retries=3, timeout=30): + """上传图片到Lsky Pro图床,增加重试机制和超时设置""" + for attempt in range(retries): + try: + with open(image_path, 'rb') as img_file: + files = {'file': img_file} + headers = { + 'Authorization': f'Bearer {token}', + 'Accept': 'application/json' + } + response = requests.post(f'{lsky_pro_url}{upload_endpoint}', files=files, headers=headers, timeout=timeout) + if response.status_code == 200: + try: + data = response.json() + if data['status']: + return data['data']['links']['url'] + except: + pass + except requests.exceptions.RequestException as e: + print(f"上传失败,重试 {attempt + 1}/{retries}: {str(e)}") + time.sleep(3) # 重试前等待3秒 + return None + + + + + @@ -182,15 +210,17 @@ def process_image_file(markdown_file_path): # 构造新的文件名 file_name, file_ext = os.path.splitext(markdown_file_path) - new_file_path = f"{file_name}_lsky{file_ext}" + new_file_path = f"{file_name}{file_ext}" # 保存为新文件 with open(new_file_path, 'w', encoding='utf-8') as file: file.write(new_content) - messagebox.showinfo("完成", f"成功处理 {len(url_mapping)} 张图片") + #messagebox.showinfo("完成", f"成功处理 {len(url_mapping)} 张图片") + print(f"{file_name}:成功处理 {len(url_mapping)} 张图片") else: - messagebox.showwarning("警告", "没有图片被处理") + #messagebox.showwarning("警告", "没有图片被处理") + print("没有图片被处理")