百度个人云存储(PCS)Python SDK.
所有 api 方法的返回值均为 requests.Response 对象:
>>> pcs = PCS('access_token')
>>> response = pcs.info()
>>> response
<Response [200]>
>>> response.ok # 状态码是否是 200
True
>>> response.status_code # 状态码
200
>>> response.content # 原始内容(二进制,json 字符串)
'{"quota":6442450944,"used":5138887,"request_id":1216061570}'
>>>
>>> response.json() # 将 json 字符串转换为 python dict
{u'used': 5138887, u'quota': 6442450944L, u'request_id': 1216061570}
关于各 api 方法的更多示例请参考 测试用例 。
关于各 api 方法的 response.json() 字典值的含义请查看 百度 PCS 文档 。
上传单个文件(<2G).
Parameters: |
|
---|---|
Returns: | Response 对象 |
分片上传—文件分片及上传.
百度 PCS 服务支持每次直接上传最大2G的单个文件。
如需支持上传超大文件(>2G),则可以通过组合调用分片文件上传的 upload_tmpfile 方法和 upload_superfile 方法实现:
除此之外,如果应用中需要支持断点续传的功能, 也可以通过分片上传文件并调用 upload_superfile 接口的方式实现。
Parameters: | file_content – 上传文件的内容 |
---|---|
Returns: | Response 对象 |
分片上传—合并分片文件.
与分片文件上传的 upload_tmpfile 方法配合使用, 可实现超大文件(>2G)上传,同时也可用于断点续传的场景。
Parameters: |
|
---|---|
Returns: | Response 对象 |
下载单个文件。
download 接口支持HTTP协议标准range定义,通过指定range的取值可以实现 断点下载功能。 例如:如果在request消息中指定“Range: bytes=0-99”, 那么响应消息中会返回该文件的前100个字节的内容; 继续指定“Range: bytes=100-199”, 那么响应消息中会返回该文件的第二个100字节内容:
>>> headers = {'Range': 'bytes=0-99'}
>>> pcs.download('/apps/test_sdk/test.txt', headers=headers)
Parameters: | remote_path – 网盘中文件的路径(包含文件名)。 必须以 /apps/ 开头。 Warning
|
---|---|
Returns: | Response 对象 |
为当前用户创建一个目录.
Parameters: | remote_path – 网盘中目录的路径,必须以 /apps/ 开头。 Warning
|
---|---|
Returns: | Response 对象 |
获取单个文件或目录的元信息.
Parameters: | remote_path – 网盘中文件/目录的路径,必须以 /apps/ 开头。 Warning
|
---|---|
Returns: | Response 对象 |
获取目录下的文件列表.
Parameters: |
|
---|---|
Returns: | Response 对象 |
移动单个文件或目录.
Parameters: |
|
---|---|
Returns: | Response 对象 |
批量移动文件或目录.
Parameters: | path_list (list) – 源文件地址和目标文件地址对列表: >>> path_list = [
... ('/apps/test_sdk/test.txt', # 源文件
... '/apps/test_sdk/testmkdir/b.txt' # 目标文件
... ),
... ('/apps/test_sdk/test.txt', # 源文件
... '/apps/test_sdk/testmkdir/b.txt' # 目标文件
... ),
... ]
Warning
|
---|---|
Returns: | Response 对象 |
拷贝文件或目录.
Parameters: |
|
---|---|
Returns: | Response 对象 |
Warning
move 操作后,源文件被移动至目标地址; copy 操作则会保留原文件。
批量拷贝文件或目录.
Parameters: | path_list (list) – 源文件地址和目标文件地址对的列表: >>> path_list = [
... ('/apps/test_sdk/test.txt', # 源文件
... '/apps/test_sdk/testmkdir/b.txt' # 目标文件
... ),
... ('/apps/test_sdk/test.txt', # 源文件
... '/apps/test_sdk/testmkdir/b.txt' # 目标文件
... ),
... ]
Warning
|
---|---|
Returns: | Response 对象 |
删除单个文件或目录.
Warning
Parameters: | remote_path (str) – 网盘中文件/目录的路径,路径必须以 /apps/ 开头。 Warning
|
---|---|
Returns: | Response 对象 |
批量删除文件或目录.
Warning
Parameters: | path_list (list) – 网盘中文件/目录的路径列表,路径必须以 /apps/ 开头。 Warning
|
---|---|
Returns: | Response 对象 |
获取指定图片文件的缩略图.
Parameters: | |
---|---|
Returns: | Response 对象 |
Warning
有以下限制条件:
对视频文件进行转码,实现实时观看视频功能. 可下载支持 HLS/M3U8 的 媒体云播放器 SDK 配合使用.
Parameters: | |
---|---|
Returns: | Response 对象 |
Warning
目前这个接口支持的源文件格式如下:
格式名称 | 扩展名 | 备注 |
---|---|---|
Apple HTTP Live Streaming | m3u8/m3u | iOS支持的视频格式 |
ASF | asf | 视频格式 |
AVI | avi | 视频格式 |
Flash Video (FLV) | flv | Macromedia Flash视频格式 |
GIF Animation | gif | 视频格式 |
Matroska | mkv | Matroska/WebM视频格式 |
MOV/QuickTime/MP4 | mov/mp4/m4a/ 3gp/3g2/mj2 | 支持3GP、3GP2、PSP、iPod 之类视频格式 |
MPEG-PS (program stream) | mpeg | 也就是VOB文件/SVCD/DVD格式 |
MPEG-TS (transport stream) | ts | 即DVB传输流 |
RealMedia | rm/rmvb | Real视频格式 |
WebM | webm | Html视频格式 |
以视频、音频、图片及文档四种类型的视图获取所创建应用程序下的 文件列表.
Parameters: |
|
---|---|
Returns: | Response 对象 |
为当前用户下载一个流式文件.其参数和返回结果与下载单个文件的相同.
Parameters: | remote_path – 需要下载的文件路径,以/开头的绝对路径,含文件名。 Warning
|
---|---|
Returns: | Response 对象 |
秒传一个文件.
Warning
Parameters: |
|
---|---|
Returns: | Response 对象 |
添加离线下载任务,实现单个文件离线下载.
Parameters: | |
---|---|
Returns: | Response 对象 |
查询离线下载任务ID列表及任务信息.
Parameters: |
|
---|---|
Returns: | Response 对象 |
获取回收站中的文件及目录列表.
Parameters: |
|
---|---|
Returns: | Response 对象 |