You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python将Google文档下载为.odt格式文件

用Python将Google文档下载为ODT格式

前置准备

  • 安装依赖包:
    pip install google-api-python-client google-auth-httplib2 google-auth-oauthlib
    
  • 在Google Cloud平台创建项目,启用Google Drive API,并下载服务账号密钥文件(JSON格式)。
  • 将目标Google文档共享给服务账号密钥中的client_email,赋予至少查看权限。

实现代码

from google.oauth2 import service_account
from googleapiclient.discovery import build
from googleapiclient.http import MediaIoBaseDownload
import io

# 配置参数
SERVICE_ACCOUNT_FILE = '你的服务账号密钥文件路径.json'
DOCUMENT_ID = '目标Google文档的ID'
OUTPUT_FILE = '导出的文件.odt'

# 授权并构建Drive服务
SCOPES = ['https://www.googleapis.com/auth/drive.readonly']
credentials = service_account.Credentials.from_service_account_file(
    SERVICE_ACCOUNT_FILE, scopes=SCOPES)
service = build('drive', 'v3', credentials=credentials)

# 导出为ODT格式
request = service.files().export_media(
    fileId=DOCUMENT_ID,
    mimeType='application/vnd.oasis.opendocument.text'
)
fh = io.FileIO(OUTPUT_FILE, 'wb')
downloader = MediaIoBaseDownload(fh, request)
done = False
while done is False:
    status, done = downloader.next_chunk()
    print(f"下载进度: {int(status.progress() * 100)}%")

print(f"ODT文件已保存至: {OUTPUT_FILE}")

关键说明

  • DOCUMENT_ID获取:打开目标Google文档,URL中d/和/edit之间的字符串即为文档ID。
  • MIME类型对应:ODT格式对应的MIME类型是application/vnd.oasis.opendocument.text,如果需要导出其他格式,可替换对应MIME类型(比如DOCX对应application/vnd.openxmlformats-officedocument.wordprocessingml.document)。
  • 权限问题:确保服务账号已被添加为文档的共享用户,否则会出现权限不足的错误。

内容的提问来源于stack exchange,提问作者Christian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 12:40:27