蓝奏网盘API
蓝奏云网盘API 2.0
基于Python3实现,最强的蓝奏云API~

蓝奏云注册
更新说明
- 修复了登录时
formhash错误的问题 - 解决了多次上传大文件被限制的问题 #3
- 细化 API 接口的功能,某些接口被取消、更名
- 操作网盘时会进行检查,屏蔽蓝奏云不合理的设计
- 支持批量上传/下载
- 上传大文件不再直接将数据分段,改用 RAR 分卷压缩 #2
- 取消使用
种子文件下载大文件,自动识别分卷压缩文件并解压 - 上传/下载时支持使用回调函数显示进度 #1
- 不再向上抛异常,而是返回错误码
简介
本库封装了对蓝奏云的基本操作: 登录、列出文件、下载文件、上传文件、删除文件(夹)、
清空回收站、恢复文件、创建文件夹、设置文件(夹)访问密码、直链解析此外,通过伪装后缀名,解决了蓝奏云的上传格式限制。
通过分卷上传,解决了单文件最大 100MB 的限制。同时增加了批量上传/下载的功能如果有任何问题或建议,欢迎提 issue。最后,求一个 star (≧∇≦)ノ
安装依赖库
pip install requests requests_toolbelt
Windows 平台可使用项目文件中的 rar.exe 作为解压工具,Linux 平台需安装 rar
sudo apt install rar
API 文档
.login(username, passwd)
登录蓝奏云
| 参数 | 类型 | 说明 | 必填 |
|---|---|---|---|
| username | str | 用户名 | Y |
| passwd | str | 登录密码 | Y |
示例 :
from api.lanzou import LanZouCloud
lzy = LanZouCloud()
code = lzy.login('username', 'passwd')
if code == LanZouCloud.SUCCESS:
print('登录成功')
返回值 :
- 成功返回 :
LanZouCloud.SUCCESS - 失败返回 :
LanZouCloud.FAILED
.logout()
注销当前账号
示例 :
code = lzy.logout()
if code == LanZouCloud.SUCCESS:
print('注销成功')
返回值 :
- 成功返回 :
LanZouCloud.SUCCESS - 失败返回 :
LanZouCloud.FAILED
.get_dir_list(folder_id)
获取子文件夹name-id列表
| 参数 | 类型 | 说明 | 必填 | 备注 |
|---|---|---|---|---|
| folder_id | int | 文件夹id | N | 默认-1(根目录) |
示例 :
# 列出 id 为 1037070 的文件夹的子文件夹
sub_dirs = lzy.get_dir_list(1037070)
print(sub_dirs)
返回值:
{
"娱乐": 1037080,
"科幻": 1037083,
"纪录片": 1037084,
"游戏改": 1037085
}
.get_file_list(folder_id)
获取文件详细信息列表
| 参数 | 类型 | 说明 | 必填 | 备注 |
|---|---|---|---|---|
| folder_id | int | 文件夹id | N | 默认-1(根目录) |
示例 :
file_list = lzy.get_file_list(1037070)
print(file_list)
注意 : 添加了伪装后缀名的文件,伪装后缀会被自动去除
返回值 :
{
"Valentin - A Little Story.mp3":{
"id": 12741016, # 文件 id
"name": "Valentin - A Little Story.mp3", # 文件名
"time": "昨天15:27", # 上传时间
"size": "8.0 M", # 文件大小
"downs": 6, # 下载次数
"has_pwd": False, # 是否设置提取码
"has_des": True # 是否设置描述
},
"小清水亜美 - 玻璃の空.mp3":{
"id": 12740874,
"name": "小清水亜美 - 玻璃の空.mp3",
"time": "昨天15:24",
"size": "10.7 M",
"downs": 0,
"has_pwd": False,
"has_des": False
}
}
.get_file_list2(folder_id)
获取子文件名-id列表
| 参数 | 类型 | 说明 | 必填 | 备注 |
|---|---|---|---|---|
| folder_id | int | 文件夹id | N | 默认-1(根目录) |
示例 :
file_list = lzy.get_file_list2(1037070)
print(file_list)
返回值 :
{
"Valentin - A Little Story.mp3": 12741016,
"小清水亜美 - 玻璃の空.mp3": 12740874
}
.get_full_path(folder_id)
获取文件夹的绝对路径
| 参数 | 类型 | 说明 | 必填 | 备注 |
|---|---|---|---|---|
| folder_id | int | 文件夹id | N | 默认-1(根目录) |
示例 :
# 路径: /视频/电影/娱乐 "娱乐"文件夹 id 为 1037080
full_path = lzy.get_full_path(1037080)
print(full_path)
返回值 :
{
"LanZouCloud": -1,
"视频": 1033205,
"电影": 1037070,
"娱乐": 1037080
}
.delete(fid)
把网盘的文件(夹)放到回收站
| 参数 | 类型 | 说明 | 必填 | 备注 |
|---|---|---|---|---|
| fid | int | 文件(夹)id | Y | - |
示例 :
code = lzy.delete(12741016)
if code == LanZouCloud.SUCCESS:
print('删除成功')
返回值 :
- 成功返回 :
LanZouCloud.SUCCESS - 失败返回 :
LanZouCloud.FAILED
注 :
- 无法删除含有子文件夹的文件夹,但含有文件的可以删除。
- 重复删除同一个 id 仍返回 :
LanZouCloud.SUCCESS - 删除不存在的 id 也返回 :
LanZouCloud.SUCCESS - 这都是蓝奏云的锅,与我无关
蓝奏网盘API的更多相关文章
- 蓝奏网盘CMD控制台
LanZouCloud-CMD 2.0 基于蓝奏云API开发的CMD版蓝奏云控制台 Github : https://github.com/zaxtyson/LanZouCloud-CMD 更新说明 ...
- Linux VPS使用百度网盘API上传备份文件
最近百度网盘将空间升级到了永久1TB,鉴于百度的实力用做数据备份空间不错,不过百度网盘没有Linux下的客户端,上传管理文件需通过百度开放云平台访问PCS资源的系列接口. 1.首先加入百度开发者:ht ...
- C#版-百度网盘API的实现(一)
在这篇文章中,楼主将会给大家介绍一下,通过C# winform程序在后台模拟用户登陆百度网盘的基本思路 首先了解下模拟登陆的流程,如下: 一,访问http://www.baidu.com网站,获取BA ...
- C#版-百度网盘API的实现(二)
在这篇文章中,我们通过代码来实现百度网盘的简单操作, 一,登陆,在代码中,我有一个Baidu1的类,实例化该类时回执行登陆方法,该类对外开放了三个方法, 1,GetFileDir获取根目录下的文件夹及 ...
- 百度网盘API的操作--PCS 百度个人云存储 上传 ,下载文件
来自http://blog.csdn.net/u014492257/article/details/39856403 另外需要所有API使用方法的请访问本人上传的资源(需要3个下载分的)链接: htt ...
- 使用pcs api往免费的百度网盘上传下载文件
百度个人云盘空间大,完全免费,而且提供了pcs api供调用操作文件,在平时的项目里往里面保存一些文件是很实用的. 环境准备: 开通读写网盘的权限及获取access_token:http://blog ...
- Python Flask高级编程之RESTFul API前后端分离精讲 (网盘免费分享)
Python Flask高级编程之RESTFul API前后端分离精讲 (免费分享) 点击链接或搜索QQ号直接加群获取其它资料: 链接:https://pan.baidu.com/s/12eKrJK ...
- JAVA9中文API百度网盘免费下载
JAVA9中文API百度网盘免费下载: https://pan.baidu.com/s/1tvHYQA8yyAS4xUFxwWrx_Q 提取码: 6e5h
- Java,面试题,简历,Linux,大数据,常用开发工具类,API文档,电子书,各种思维导图资源,百度网盘资源,BBS论坛系统 ERP管理系统 OA办公自动化管理系统 车辆管理系统 各种后台管理系统
Java,面试题,简历,Linux,大数据,常用开发工具类,API文档,电子书,各种思维导图资源,百度网盘资源BBS论坛系统 ERP管理系统 OA办公自动化管理系统 车辆管理系统 家庭理财系统 各种后 ...
随机推荐
- 学习java的第五周
java流程控制 顺序结构 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是由若干个依次执的处理步骤组成的,它是任何-一个算法都离不开的一种基本算法结构. 选择结构 if结构 if(布尔表达式 ...
- 自建本地服务器,自建Web服务器——保姆级教程!
搭建本地服务器,Web服务器--保姆级教程! 本文首发于https://blog.chens.life/How-to-build-your-own-server.html. 先上图!大致思路就是如此. ...
- vue a标签下载图片文档显示下载失败
解决:把所要下载的文件放到static文件下,具体原因-静态文件放在static内,否则webpack会打包.
- 修改vsftpd的默认根目录/var/ftp/pub到另一个目录
修改ftp的根目录只要修改/etc/vsftpd/vsftpd.conf文件即可: 加入如下几行: local_root=/var/www/html chroot_local_user=YES ano ...
- Biologically Inspired Reinforcement Learning: Reward-Based Decomposition for Multi-goal Environments
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! Abstract 我们提出了一种基于情绪的分层强化学习(HRL)算法,用于具有多种奖励来源的环境.该系统的架构受到大脑神经生物学的启发,特 ...
- HM16.0之帧内模式——xCheckRDCostIntra()函数
参考:https://blog.csdn.net/nb_vol_1/article/category/6179825/1? 1.源代码: Void TEncCu::xCheckRDCostIntra( ...
- JS继承 小白文
继承我的理解是 一个对象 能够使用另一个对象的方法和属性 继承需要一个父类构造函数 一.通过原型链继承 通过 创建一个 Person 的实例对象,该对象身上 不仅有 name 和 age 等方法, 也 ...
- 《Head First 设计模式》:外观模式
正文 一.定义 外观模式提供了一个统一的接口,用来访问子系统中的一群接口.外观定义了一个高层接口,让子系统更容易使用. 要点: 外观模式将一个或数个类的复杂的一切都隐藏在背后,只显露出一个干净美好的外 ...
- 区块链入门到实战(37)之Solidity – 循环语句
与其他语言类似,Solidity语言支持循环结构,Solidity提供以下循环语句. while do ... while for 循环控制语句:break.continue. Solidity – ...
- Linux两台服务器mysql数据库同步
我们在做web系统部署的时候往往涉及到两台甚至多台数据库的备份,为了数据安全考虑(虽然说到底不过是一堆0 1,但是价值千金啊),所以我们还是乖乖做同步把! 1.准备两台Linux服务器(主.从) 2. ...
- 蓝奏网盘CMD控制台