🖼️ OSS资源(图床)¶
OSS资源功能提供图床服务,可以轻松地将图片嵌入到您的网站或其他应用中。
📋 功能概览¶
- 文件管理 - 上传、下载、移动、重命名、删除文件等
- 目录管理 - 创建目录结构
- 文件操作 - 获取文件详情等
- 高级功能 - 文件复制、离线下载(已弃用)
🚀 快速示例¶
from pan123 import Pan123
# 初始化客户端
pan = Pan123("your_access_token")
# 上传图片到根目录
result = pan.oss.upload(parent_file_id=0, file_path="/path/to/image.jpg")
# 从返回结果中获取图片链接
print(f"上传成功,文件ID: {result}")
🛠️ 详细功能¶
创建目录¶
创建新的目录来组织您的资源文件。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
name | str | 是 | 文件夹名称 |
parent_id | int | 是 | 父目录ID,上传到根目录时填写 0 |
重命名文件¶
批量重命名文件。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
rename_dict | dict | 是 | 重命名映射,格式为 {文件ID: 新文件名} |
示例:
移动文件¶
将文件移动到指定目录。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
file_id_list | list[int] | 是 | 要移动的文件ID列表 |
to_parent_file_id | int | 是 | 移动到的目标文件夹ID |
删除文件¶
彻底删除文件。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
file_ids | list | 是 | 要删除的文件ID列表 |
获取文件详情¶
获取指定文件的详细信息。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
file_id | int | 是 | 要获取详情的文件ID |
上传文件¶
一键上传(推荐)¶
这是最简单的上传方式,会自动处理秒传和分片上传。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
parent_file_id | int | 是 | 文件上传到哪个目录下 |
file_path | str | 是 | 要上传的文件的路径 |
手动上传(高级用法)¶
如需要更精确控制上传过程,可以使用手动上传方式:
- 创建文件记录
如果返回 reuse: True,表示秒传成功,上传结束。否则将返回预上传ID和分片大小。
-
获取分片上传地址
-
上传分片 使用PUT请求上传文件分片到获取的URL地址
-
校验分片上传状态
-
完成上传
-
获取最终结果(可选)
文件复制相关功能¶
⚠️ 注意:以下功能属于高级操作,请谨慎使用。
创建复制任务¶
创建文件复制任务,从源位置复制文件到图床。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
file_ids | list[str] | 是 | 需要复制的文件ID列表 |
to_parent_file_id | int | 否 | 要移动到的图床目标文件夹ID,移动到根目录时为空 |
sourceType | int | 是 | 复制来源(1=云盘) |
type | int | 是 | 业务类型,固定为 1 |
获取复制任务详情¶
查询复制任务的执行状态和详情。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
task_id | int | 是 | 复制任务ID |
获取复制失败文件列表¶
获取复制过程中失败的文件列表。
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
task_id | int | 是 | 失败任务ID |
limit | int | 是 | 每页文件数量,最大不超过100 |
page | int | 是 | 当前页码 |
📝 注意事项¶
- 已弃用功能:离线下载相关功能已在OSS模块中弃用,请使用主模块的离线下载功能。
- 秒传功能:系统会自动检测文件是否已存在,如果存在相同文件(通过ETag验证),将直接复用,无需上传。
- 分片上传:大文件会被切分为多个分片上传,以提高上传效率和稳定性。
- 文件类型:虽然图床主要用于图片,但也可以存储其他类型的文件。
- 权限验证:所有操作都需要有效的access_token。
- 存储限制:注意您的云盘存储空间限制。