空痕博客

夸克网盘python sdk库

KongHen02
5天前发布 /正在检测是否收录...

Quark 网盘 Python 库使用文档

1. 配置与初始化

首先,准备 config.yaml 配置文件,内容示例:

quark:
  cookie: "你的cookie"

在代码中读取配置并初始化 Quark 会话:

import yaml
from Quark import QuarkSession

with open("config.yaml", "r", encoding="utf-8") as f:
    config = yaml.safe_load(f)

quark_conf = config["quark"]
QuarkSession = QuarkSession(cookie=quark_conf["cookie"])

2. 检查 Cookie 是否有效

status, result = QuarkSession.get_user_info()

3. 文件管理

3.1 创建文件管理实例

from Quark import QuarkFileManager
quark_file = QuarkFileManager(session=QuarkSession)

3.2 获取文件夹内列表

status, result = quark_file.get_lists(
    pdir_fid="文件夹ID",
    page=1,
    size=10,
    sort_by="file_name",
    sort_order="asc"
)

3.3 移动文件/文件夹

status, result = quark_file.move_file(
    src_fids=["文件ID1", "文件ID2"],
    dst_pdir_fid="目标文件夹ID"
)
# 返回示例
# True {"task_id": "...", "finish": true}

3.4 重命名文件/文件夹

status, result = quark_file.rename_file("文件ID", new_name="新文件名.png")
# 返回示例
# True {}

3.5 删除文件/文件夹

status, result = quark_file.remove_file(fids=["文件ID1", "文件ID2"])
# 返回示例
# True {"task_id": "...", "finish": false}

4. 文件夹管理

4.1 创建文件夹管理实例

from Quark import QuarkFolderManager
quark_folder = QuarkFolderManager(session=QuarkSession)

4.2 创建文件夹

status, result = quark_folder.create_folder(
    folder_name="创建测试",
    pdir_fid="父文件夹ID"
)
# 返回示例
# True {"finish": true, "fid": "..."}

5. 分享转存

5.1 创建转存实例

from Quark import QuarkSaveManager
quark_save = QuarkSaveManager(session=QuarkSession)

5.2 获取分享信息

status, result = quark_save.get_share_info(text="分享文本")
# 返回示例
# True {"pwd_id": "...", "passcode": "..."}

5.3 获取分享链接 stoken

status, result = quark_save.get_share_stoken(pwd_id="...", passcode="...")
# 返回示例
# True {"stoken": "...", ...}

5.4 获取分享链接文件列表

status, result = quark_save.get_share_list(
    pwd_id="...",
    stoken="...",
    pdir_fid="0",  # 根目录
    page=1,
    size=10,
    sort_by="file_name",
    sort_order="asc"
)

5.5 转存全部/部分文件到网盘

全部转存:

status, result = quark_save.save_share_file(
    pwd_id="...",
    stoken="...",
    to_pdir_fid="目标文件夹ID",
    pdir_save_all=True
)
# 返回示例
# True {"task_id": "..."}

部分转存:

status, result = quark_save.save_share_file(
    pwd_id="...",
    stoken="...",
    to_pdir_fid="目标文件夹ID",
    fid_list=["文件ID1", "文件ID2"],
    share_token_list=["token1", "token2"],
    pdir_save_all=False
)
# 返回示例
# True {"task_id": "...", ...}

6. 分享链接管理

6.1 创建分享链接实例

from Quark import QuarkShareManager
quark_share = QuarkShareManager(session=QuarkSession)

6.2 创建分享链接

status, result = quark_share.create_share(
    fid_list=["文件ID1", "文件ID2", "文件ID3"],
    title="分享标题",
    expired_type=1,  # 1=永久,2=7天等
    url_type=1       # 1=公开,2=私密等
)
# 返回示例
# True {
#     "task_id": "2b6a31c873dc4a1ba72c6825d5199351",
#     "task_sync": false
# }
  • fid_list:要分享的文件/文件夹ID列表
  • title:分享标题
  • expired_type:过期类型(如1为永久,2为7天等)
  • url_type:链接类型(如1为公开,2为私密等)
创建分享后会返回 task_id,可用任务管理接口查询进度,分享成功后可通过 get_share_info 获取分享链接等详细信息。

6.3 获取分享链接信息

status, result = quark_share.get_share_info(share_id="分享ID")
# 返回示例
# True {"title": "...", "share_url": "...", ...}

7. 任务管理

7.1 创建任务管理实例

from Quark import QuarkTaskManager
quark_task = QuarkTaskManager(session=QuarkSession)

7.2 获取任务状态

status, result = quark_task.get_task_status(task_id="任务ID", retry_index=0)
# status=0 未完成,status=2 成功
# share_id 可用于获取分享链接信息

8. 文件上传

8.1 创建上传实例

from Quark import QuarkUploadManager
quark_upload = QuarkUploadManager(session=QuarkSession)

8.2 上传文件

def progress(percent):
    print(f"上传进度: {percent}%")

status, result = quark_upload.upload_file(
    file_path="本地文件路径",
    file_name="上传文件名.zip",
    pdir_fid="目标文件夹ID",
    progress_callback=progress
)
# 返回示例(云端存在同文件):
# True {"finish": true, "fid": "...", ...}
# 返回示例(云端不存在同文件):
# True {"task_id": "...", "finish": true, "fid": "...", ...}

9. 打印输出

所有接口返回均为 (status, result),可直接打印:

import json
print(status, json.dumps(result, indent=4))

10. 其他说明

  • 各接口参数请参考注释及返回示例。
  • 任务型操作(如移动、删除、转存、分享等)返回 task_id 后,可用任务管理接口查询进度。
  • 分享相关操作需先获取 pwd_idstoken 等参数。

如需更详细的参数说明或扩展用法,请参考源码或补充提问。

代码下载

cloud_driver_sdk

参考文献

openList

© 版权声明
THE END
喜欢就支持一下吧
点赞 1 分享 收藏
评论 抢沙发
取消
易航博客