Back to Home
published
healthy
Language简体中文繁体中文(粤语)English

Microsoft Graph Office 转 PDF

通过 Microsoft Graph 在线 Office 渲染把 Word / PPT / Excel 转换为高质量 PDF。

https://github.com/bbmy85552/graph-api-pdf

Visit Bob
Graph API
PDF
工具

-

Project Overview

项目概述

本工具使用 Microsoft Graph 的在线 Office 渲染服务,将 Word、PowerPoint、Excel 文档转换为 PDF。由于文件由 Microsoft 365 在云端渲染,转换效果通常比本地转换工具更接近 Office 原生效果。

核心功能

  • 支持 .doc/.docx.ppt/.pptx.xls/.xlsx 转 PDF。
  • 支持单文件转换与文件夹批量转换。
  • 使用 Microsoft Graph device-code OAuth 登录。
  • 上传到临时 OneDrive 目录,下载 PDF 后删除远程临时文件。
  • 凭据与 token 缓存保存在仓库之外。

使用方式

# 单文件
python3 graph_convert.py path/to/file.pptx -o output

# 文件夹批量
python3 graph_convert.py path/to/folder -o output

首次运行会打印 Microsoft device-code 登录链接与代码,授权后 MSAL 缓存到 ~/.cache/graph_convert_token.json

权限与安全

  • 需要 Microsoft Entra 应用注册并启用 public client flow。
  • 授予 Microsoft Graph 委托权限 Files.ReadWrite
  • GRAPH_CLIENT_ID 不是 client secret,但仍建议保持本地配置不入库。
  • Token 缓存相当于登录会话,需要妥善保护。

技术栈

  • Python 3
  • Microsoft Graph API + MSAL