This commit is contained in:
dengrb1
2023-05-26 13:09:55 +08:00
committed by GitHub
parent f1fbe242b8
commit 0ed2ce9a64
2 changed files with 36 additions and 26 deletions

View File

@@ -10,6 +10,7 @@ import requests
from tkinter import messagebox
root = Tk()
ml = os.getcwd()
def quit_exe():
root.destroy()
@@ -17,32 +18,11 @@ def update_now():
webbrowser.open("https://kgithub.com/dengrb1/chatgpt/releases/")
messagebox.showinfo('update', '请选择最新版本并下载运行安装程序,然后就可以更新了!')
def downloads_update_now():
url = 'https://api.github.com/repos/dengrb1/chatgpt/releases/latest'
response = requests.get(url, headers={'Accept': 'application/vnd.github.v3+json'})
release_info = json.loads(response.text)
new_version = release_info['tag_name']
current_version = '1.3' # 修改为你的已有版本号
if new_version != current_version:
messagebox.showinfo('在线更新','发现新版本: {}'.format(new_version))
messagebox.showinfo('在线更新','准备更新')
# 下载最新程序并保存到本地
download_url = release_info['assets'][0]['browser_download_url'] # 假设发布包第一个asset为我们要下载的程序
file_name = download_url.split('/')[-1]
file_path = os.path.join(os.getcwd(), file_name)
print('开始下载:{}'.format(file_name))
response = requests.get(download_url)
with open(file_path, 'wb') as f:
f.write(response.content)
print('下载完成!')
# 打开更新程序
os.startfile(file_path)
if os.path.exists(os.path.join(ml, "downloads_update_now.exe")):
os.startfile("downloads_update_now")
else:
messagebox.showinfo('在线更新','当前已是最新版本')
messagebox.showerror(':( error','在线更新模块错误:文件不存在')
# Label
update_now_bt = Button(root ,text='在线更新', command=update_now).pack(side=RIGHT)
@@ -73,7 +53,7 @@ text_box.configure(state='disabled')
# Button
quit_bt = Button(root, text='返回', command=quit_exe).pack()
update_now_bt = Button(root, text='在线更新')
update_now_bt = Button(root, text='在线更新', command=downloads_update_now).pack()
# mainloop
root.title('更新日志')