fix progress step

This commit is contained in:
jxxghp
2025-08-24 16:33:44 +08:00
parent 2285befebb
commit 8fac8c5307
6 changed files with 17 additions and 16 deletions

View File

@@ -14,7 +14,7 @@ def transfer_process(path: str) -> Callable[[int | float], None]:
"""
传输进度回调
"""
pbar = tqdm(total=100, desc="整理进度", unit="%")
pbar = tqdm(total=100, desc="整理进度")
progress = ProgressHelper(path)
progress.start()

View File

@@ -45,6 +45,9 @@ class AliPan(StorageBase, metaclass=WeakSingleton):
# 基础url
base_url = "https://openapi.alipan.com"
# 文件块大小默认10MB
chunk_size = 10 * 1024 * 1024
def __init__(self):
super().__init__()
self._auth_state = {}
@@ -724,7 +727,7 @@ class AliPan(StorageBase, metaclass=WeakSingleton):
downloaded_size = 0
with open(local_path, "wb") as f:
for chunk in r.iter_content(chunk_size=8192):
for chunk in r.iter_content(chunk_size=self.chunk_size):
if chunk:
f.write(chunk)
downloaded_size += len(chunk)

View File

@@ -31,9 +31,7 @@ class Alist(StorageBase, metaclass=WeakSingleton):
"move": "移动",
}
# 文件块大小默认1MB
chunk_size = 1024 * 1024
# 快照检查目录修改时间
snapshot_check_folder_modtime = settings.OPENLIST_SNAPSHOT_CHECK_FOLDER_MODTIME
def __init__(self):

View File

@@ -25,8 +25,8 @@ class LocalStorage(StorageBase):
"softlink": "软链接"
}
# 文件块大小默认1MB
chunk_size = 1024 * 1024
# 文件块大小默认100MB
chunk_size = 100 * 1024 * 1024
def init_storage(self):
"""

View File

@@ -39,6 +39,9 @@ class SMB(StorageBase, metaclass=WeakSingleton):
"copy": "复制",
}
# 文件块大小默认100MB
chunk_size = 100 * 1024 * 1024
def __init__(self):
super().__init__()
self._connected = False
@@ -433,12 +436,9 @@ class SMB(StorageBase, metaclass=WeakSingleton):
# 使用更高效的文件传输方式
with smbclient.open_file(smb_path, mode="rb") as src_file:
with open(local_path, "wb") as dst_file:
# 使用更大的缓冲区提高性能
buffer_size = 1024 * 1024 # 1MB
downloaded_size = 0
while True:
chunk = src_file.read(buffer_size)
chunk = src_file.read(self.chunk_size)
if not chunk:
break
dst_file.write(chunk)
@@ -483,12 +483,9 @@ class SMB(StorageBase, metaclass=WeakSingleton):
# 使用更高效的文件传输方式
with open(path, "rb") as src_file:
with smbclient.open_file(smb_path, mode="wb") as dst_file:
# 使用更大的缓冲区提高性能
buffer_size = 1024 * 1024 # 1MB
uploaded_size = 0
while True:
chunk = src_file.read(buffer_size)
chunk = src_file.read(self.chunk_size)
if not chunk:
break
dst_file.write(chunk)

View File

@@ -43,6 +43,9 @@ class U115Pan(StorageBase, metaclass=WeakSingleton):
# 基础url
base_url = "https://proapi.115.com"
# 文件块大小默认10MB
chunk_size = 10 * 1024 * 1024
def __init__(self):
super().__init__()
self._auth_state = {}
@@ -610,7 +613,7 @@ class U115Pan(StorageBase, metaclass=WeakSingleton):
downloaded_size = 0
with open(local_path, "wb") as f:
for chunk in r.iter_content(chunk_size=8192):
for chunk in r.iter_content(chunk_size=self.chunk_size):
if chunk:
f.write(chunk)
downloaded_size += len(chunk)