You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MEGA Python API调用import_public_file时file_key参数是什么?

file_key参数含义与报错解决方案

参数含义

MEGA采用端到端加密存储用户文件,所有文件的加密密钥不会上传至MEGA服务器,file_key就是共享链接中#后面的字符串,是对应共享文件的解密密钥,只有拿到该密钥才能解密获取共享文件的完整内容。

你给出的示例共享链接https://mega.nz/file/bgJ3yA5I#fmFDN9vJZnhHMBQPNheEsm72QBYskzSm6vmwGFcBPHo中,fmFDN9vJZnhHMBQPNheEsm72QBYskzSm6vmwGFcBPHo就是该文件的file_key。

报错原因

你使用的mega.py库的import_public_file方法不支持直接传入完整共享链接,需要手动拆分链接得到文件ID和file_key两个独立参数,分别传入方法。

修复后的代码

手动拆分参数调用

from mega import Mega
mega = Mega()

client = mega.login('email', 'password')

folder = client.find('Folder')[0]

# 从共享链接拆分得到的两个参数
public_file_id = 'bgJ3yA5I'
file_key = 'fmFDN9vJZnhHMBQPNheEsm72QBYskzSm6vmwGFcBPHo'

client.import_public_file(public_file_id, file_key, dest_node=folder)

自动解析链接工具函数

如果需要批量处理链接,可以加一个简单的解析函数自动拆分参数:

def parse_mega_public_link(link: str) -> tuple[str, str]:
    id_part, key_part = link.split('#')
    file_id = id_part.rsplit('/', 1)[-1]
    return file_id, key_part

# 调用示例
file_id, file_key = parse_mega_public_link('https://mega.nz/file/bgJ3yA5I#fmFDN9vJZnhHMBQPNheEsm72QBYskzSm6vmwGFcBPHo')
client.import_public_file(file_id, file_key, dest_node=folder)

内容的提问来源于stack exchange,提问作者HyperTech

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 23:48:02