diff --git a/SpaceSniffer.py b/SpaceSniffer.py index c8ea0af..def8a97 100644 --- a/SpaceSniffer.py +++ b/SpaceSniffer.py @@ -9,7 +9,7 @@ import subprocess import logging import requests -logging.basicConfig( +logging.basicConfig( # 配置日志记录器 level=logging.INFO, format="%(asctime)s - %(levelname)s - %(message)s", handlers=[ @@ -18,6 +18,17 @@ logging.basicConfig( ], ) +proxy = {"http": None, "https": None} # Requests代理设置 + + +def format_size(size): # 格式化文件/目录大小 + units = ["B", "KB", "MB", "GB", "TB"] + index = 0 + while size >= 1024 and index < len(units) - 1: + size /= 1024.0 + index += 1 + return f"{size:.2f} {units[index]}" + class FolderScanner(threading.Thread): def __init__(self, start_path, queue, progress_queue): @@ -45,7 +56,7 @@ class FolderScanner(threading.Thread): self.queue.put((folder_path, size, dirpath, "folder")) scanned_items += 1 self.update_progress(scanned_items, folder_path) - logging.info(f"扫描目录: {folder_path} 大小: {size} 字节") + logging.info(f"扫描目录: {folder_path} 大小: {format_size(size)} ") for filename in filenames: file_path = os.path.join(dirpath, filename) @@ -53,7 +64,7 @@ class FolderScanner(threading.Thread): self.queue.put((file_path, size, dirpath, "file")) scanned_items += 1 self.update_progress(scanned_items, file_path) - logging.info(f"扫描文件: {file_path} 大小: {size} 字节") + logging.info(f"扫描文件: {file_path} 大小: {format_size(size)} ") def get_size(self, path): # 获取文件/目录大小 total_size = 0 @@ -74,7 +85,7 @@ class App(tk.Tk): def __init__(self, start_path): # 初始化 super().__init__() self.withdraw() - self.title("目录扫描器 V1.4.1") + self.title("目录扫描器 V1.4.2") self.start_path = start_path self.queue = Queue() self.progress_queue = Queue() @@ -169,7 +180,7 @@ class App(tk.Tk): try: # 发送 GET 请求获取最新的 Release response = requests.get( - f"{base_url}/{repo_owner}/{repo_name}/releases/latest" + f"{base_url}/{repo_owner}/{repo_name}/releases/latest", proxies=proxy ) if response.status_code == 200: @@ -223,7 +234,7 @@ class App(tk.Tk): def show_about(self): messagebox.showinfo( "关于", - "一款开源的文件/目录扫描工具\n可以直观地展示目录的文件结构以及文件大小\n\n软件版本 V1.4.1\n作者 ahdoawhfo\n", + "一款开源的文件/目录扫描工具\n可以直观地展示目录的文件结构以及文件大小\n\n软件版本 V1.4.2\n作者 ahdoawhfo\n", ) def on_double_click(self, event): # V1.2 Update:当双击的是文件时,打开文件 @@ -243,17 +254,9 @@ class App(tk.Tk): self.start_path = new_path self.refresh_tree() - def format_size(self, size): # 格式化文件/目录大小 - units = ["B", "KB", "MB", "GB", "TB"] - index = 0 - while size >= 1024 and index < len(units) - 1: - size /= 1024.0 - index += 1 - return f"{size:.2f} {units[index]}" - def populate_root(self): # 初始化根目录 size = self.scanner.get_size(self.start_path) - formatted_size = self.format_size(size) + formatted_size = format_size(size) self.tree.insert( "", "end", @@ -273,7 +276,7 @@ class App(tk.Tk): return path, size, parent, tag = item - formatted_size = self.format_size(size) + formatted_size = format_size(size) parent_iid = self.get_iid(parent) if parent == self.start_path: parent_iid = self.start_path @@ -526,12 +529,12 @@ class UpdateManager: repo_owner = "ahdoawhfo" repo_name = "SpaceSniffer" base_url = "https://git.a6.wiki/api/v1/repos" - current_version = "1.4.1" # 替换成你的当前软件版本 + current_version = "1.4.2" # 替换成你的当前软件版本 try: # 发送 GET 请求获取最新的 Release response = requests.get( - f"{base_url}/{repo_owner}/{repo_name}/releases/latest" + f"{base_url}/{repo_owner}/{repo_name}/releases/latest", proxies=proxy ) if response.status_code == 200: