最近更新时间:2025-06-11 14:15:56
以下代码用于异步下载文件:
from ks3.connection import Connection
# 金山云主账号AccessKey拥有所有API的访问权限,风险很高。
# 强烈建议您创建并使用子账号账号进行 API 访问或日常运维,请登录https://uc.console.ksyun.com/pro/iam/#/user/list创建子账号。
# 通过指定host(Endpoint),您可以在指定的地域创建新的存储空间。
c = Connection('<YOUR_ACCESS_KEY>', '<YOUR_SECRET_KEY>', host='<YOUR_REGION_ENDPOINT>')
# 获取存储空间实例
b = c.get_bucket('<YOUR_BUCKET_NAME>')
# 异步下载文件,以asyncio为例
import asyncio
async def download_async(keynames, headers=None):
tasks = []
for index, keyname in enumerate(keynames):
k = b.get_key(keyname)
task = k.download_file_async("<savedFilePath>")
tasks.append(task)
rets = await asyncio.gather(*tasks, return_exceptions=True)
# 打印某一个任务的requestid
print('rets[0] requestid:', rets[0].response_metadata.request_id)
return rets
asyncio.run(download_async(['<yourKeyName1>', '<yourKeyName2>']))
纯净模式