根据《腾讯文档——开发文档》实现了 API 接口。
请区分腾讯文档和企业微信文档,前者域名 docs.qq.com,后者域名是 doc.weixin.qq.com
功能特点:
- token 有 cache
- 基本接口有封装
- 合并接口封装,比如单接口实现上传文档等
pip install qq-doc
Demo 中有 xlsx 的文档上传到指定目录下的示例,需要替换自己的 client_id
和 client_secret
。
from qq_doc import QQDocAPI
client_id = "your_client_id"
client_secret = "your_client_secret"
folder_name = "test"
filename = "test.xlsx"
api = QQDocAPI(client_id, client_secret)
folder = api.create_folder_if_not_exist(folder_name)
new_file = api.upload_file(filename, folder["ID"])
# 加一个公开写权限,也可以使用publicRead, private, members
api.set_file_permission(new_file["ID"], "publicWrite")
print(new_file)
注意:腾讯文档支持同名文件的存在,所以如果多次执行,会产生多个文件,他们的ID不同,但是命名相同。请记得清理
接口 | 方法名称 |
---|---|
新建文档 | |
查询文档 | |
重命名文档 | |
移动文档 | |
删除文档 | delete_folder |
生成副本 | |
收藏文档 | |
置顶文档 | |
设置水印 | |
创建快捷方式 | |
恢复文档 |
接口 | 方法名称 |
---|---|
预导入文档 | create_import_info |
异步导入文档 | async_import_document |
查询导入进度 | get_import_progress |
[封装]同步导入文档 | upload_file |
接口 | 方法名称 |
---|---|
导出文档 | |
导出进度查询 |
接口 | 方法名称 |
---|---|
获取文档列表 | list_folder_contents |
查询文件夹信息 | get_folder_metadata |
[封装]根据文件名获得文件列表 | get_folder_by_name |
添加文件夹 | create_folder |
[封装]创建文件夹如果不存在 | create_folder_if_not_exist |
删除文件夹 | delete_folder |
查询文件夹权限 | |
移动文件夹 | |
重命名文件夹 |
接口 | 方法名称 |
---|---|
查询用户访问权限 | get_file_access |
转让文档所有权 | |
查看文档权限 | get_file_permission |
设置文档权限 | set_file_permission |
申请文档权限 | |
添加协作成员 | add_collaborators |
移除协作成员 | |
查询协作成员 | get_collaborators |
接口 | 方法名称 |
---|---|
列表过滤 | |
关键字搜索 |
接口 | 方法名称 |
---|---|
fileID 转换 | |
上传图片 |
接口 | 方法名称 |
---|---|
查询消息列表未读数量 |