|
发表于 2023-9-12 17:11:09
|
显示全部楼层
本帖最后由 isdkz 于 2023-9-12 17:14 编辑
- import tkinter as tk
- from tkinter import filedialog
- import requests
- import zipfile
- import io
- import json
- # 定义开始下载函数
- def start_download():
- filepath = filepath_var.get()
- with open(filepath, 'r') as f:
- data = json.load(f)
- # 遍历assets字典,下载并解压zip文件
- for key, value in data['assets'].items():
- if key.endswith('.zip'):
- url = 'http://xxx.com/' + key
- r = requests.get(url)
- with zipfile.ZipFile(io.BytesIO(r.content)) as z:
- z.extractall('.')
- # 下载完成后弹出提示框
- tk.messagebox.showinfo('提示', '下载完成!')
- # 创建主窗口和各种控件
- root = tk.Tk()
- root.title('批量下载')
- root.geometry('300x150')
- filepath_var = tk.StringVar()
- filepath_label = tk.Label(root, text='请选择json文件:')
- filepath_label.pack(pady=10)
- filepath_entry = tk.Entry(root, textvariable=filepath_var)
- filepath_entry.pack(pady=5)
- def choose_file():
- filepath = filedialog.askopenfilename()
- filepath_var.set(filepath)
- choose_file_button = tk.Button(root, text='选择文件', command=choose_file)
- choose_file_button.pack(pady=5)
- confirm_button = tk.Button(root, text='开始下载', command=start_download)
- confirm_button.pack(pady=10)
- # 进入消息循环
- root.mainloop()
复制代码
|
评分
-
查看全部评分
|