This commit is contained in:
dengrb1
2023-05-25 20:39:44 +08:00
committed by GitHub
parent 9df5b06f7d
commit 6868a0ab4c
3 changed files with 46 additions and 13 deletions

View File

@@ -4,6 +4,9 @@
from tkinter import *
from tkinter.scrolledtext import ScrolledText
import webbrowser
import os
import json
import requests
from tkinter import messagebox
root = Tk()
@@ -13,6 +16,33 @@ def quit_exe():
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)
else:
print('当前已是最新版本')
# Label
update_now_bt = Button(root ,text='在线更新', command=update_now).pack(side=RIGHT)
@@ -47,4 +77,5 @@ quit_bt = Button(root, text='返回', command=quit_exe).pack()
# mainloop
root.title('更新日志')
root.geometry('355x250+400+400')
downloads_update_now()
root.mainloop()