Mega.co.nz API的Python库
项目描述
Mega.py
为Mega.co.nz API提供的Python库,目前支持
- 登录
- 上传
- 下载
- 删除
- 搜索
- 分享
- 重命名
- 移动文件
这是一个正在进行中的项目,更多功能即将推出。
有关更多信息,请参阅API_INFO.md
使用方法
创建Mega账户
首先,在Mega上创建账户 .
安装mega.py包
运行以下命令,或从最新github源运行设置。
pip install mega.py
导入mega.py
from mega import Mega
创建mega.py的实例
mega = Mega()
登录到Mega
m = mega.login(email, password)
# login using a temporary anonymous account
m = mega.login()
获取用户详情
details = m.get_user()
获取账户余额(仅限Pro账户)
balance = m.get_balance()
获取账户磁盘配额
quota = m.get_quota()
获取账户存储空间
# specify unit output kilo, mega, gig, else bytes will output
space = m.get_storage_space(kilo=True)
获取账户文件
files = m.get_files()
上传文件并获取其公开链接
file = m.upload('myfile.doc')
m.get_upload_link(file)
# see mega.py for destination and filename options
导出文件或文件夹
public_exported_web_link = m.export('myfile.doc')
public_exported_web_link = m.export('my_mega_folder/my_sub_folder_to_share')
# e.g. https://mega.nz/#F!WlVl1CbZ!M3wmhwZDENMNUJoBsdzFng
查找文件或文件夹
folder = m.find('my_mega_folder')
# Excludes results which are in the Trash folder (i.e. deleted)
folder = m.find('my_mega_folder', exclude_deleted=True)
将文件上传到目标文件夹
folder = m.find('my_mega_folder')
m.upload('myfile.doc', folder[0])
从URL或文件对象下载文件,可选指定目标文件夹
file = m.find('myfile.doc')
m.download(file)
m.download_url('https://mega.co.nz/#!utYjgSTQ!OM4U3V5v_W4N5edSo0wolg1D5H0fwSrLD3oLnLuS9pc')
m.download(file, '/home/john-smith/Desktop')
# specify optional download filename (download_url() supports this also)
m.download(file, '/home/john-smith/Desktop', 'myfile.zip')
从URL导入文件,可选指定目标文件夹
m.import_public_url('https://mega.co.nz/#!utYjgSTQ!OM4U3V5v_W4N5edSo0wolg1D5H0fwSrLD3oLnLuS9pc')
folder_node = m.find('Documents')[1]
m.import_public_url('https://mega.co.nz/#!utYjgSTQ!OM4U3V5v_W4N5edSo0wolg1D5H0fwSrLD3oLnLuS9pc', dest_node=folder_node)
创建文件夹
m.create_folder('new_folder')
m.create_folder('new_folder/sub_folder/subsub_folder')
返回文件夹节点名称和节点_id的字典,例如
{
'new_folder': 'qpFhAYwA',
'sub_folder': '2pdlmY4Z',
'subsub_folder': 'GgMFCKLZ'
}
重命名文件或文件夹
file = m.find('myfile.doc')
m.rename(file, 'my_file.doc')
联系支持
对于付费优先支持,请联系 mega@odwyer.software。
发布历史
1.0.8 (2020-06-25)
- 修复了当存在多个具有该名称的文件时,find方法返回错误文件的问题。
- 处理新的共享文件URL。
1.0.7 (2020-03-25)
- 修复了通过计算公共RSA指数而不是硬编码来登录的问题。
1.0.6 (2020-02-03)
- 修复了RSA公共指数问题。
- 将依赖项pycrypto切换到pycryptodome。
1.0.5 (2019-11-18)
- 增加失败API请求重试之间的等待时间。
1.0.4 (2019-11-18)
- 增加失败API请求重试之间的等待时间。
1.0.3 (2019-11-12)
- 修复了损坏的
download
方法。 - 将
download
和download_url
方法更改为返回下载文件的路径,之前返回的是None
。 - 添加了LICENSE。
1.0.2 (2019-11-07)
- 撤销“用pycryptodome替换pycrypto依赖”的更改,因为它会中断登录过程。
1.0.1 (2019-11-06)
- 当请求因EAGAIN响应失败时,使用指数退避重试,最多20秒。
- 添加了日志记录,移除了打印语句。
- 用pycryptodome替换pycrypto依赖。
- 移除了特定于Python 2的代码。
1.0.0 (2019-10-31)
- 移除了损坏的方法
get_contacts()
。 - 添加了对使用v2 Mega用户账户登录的支持。
- 添加了
export()
方法,用于共享文件或文件夹,返回包含密钥的公共分享URL。 - 为RequestError异常添加了code和message属性,使得抛出的异常中的消息包含更多详细信息。
- 修改了
create_folder()
,使其可以接受包含多个子目录的路径,并添加了创建所有这些目录的支持(类似于Unix系统上的'mkdir -p')。 - 为
find()
方法添加了exclude_deleted=True
可选参数,以排除结果中的已删除节点。
0.9.20 (2019-10-17)
- 修复了
upload
方法的Python 3错误。
0.9.19 (2019-10-16)
- 添加了Python 3支持并修复了错误。
- 更新了打包代码。
- 添加了更改日志。
0.9.18 (2013-07-04)
- 未知
项目详情
下载文件
下载您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
mega.py-1.0.8.tar.gz (18.6 kB 查看哈希)
构建分布
mega.py-1.0.8-py2.py3-none-any.whl (19.5 kB 查看哈希)