5 篇文章带有标签 “excel”

OfficeCLI 研究与实践总结

对象:iOfficeAI/OfficeCLIhttps://github.com/iOfficeAI/OfficeCLI) 时间线:研究 → 安装到 WorkBuddy → 能力验证 → 三格式展示文档 文档性质:将「深度研究」与「本机实践」合并沉淀,既含结论也含可复现的操作记录

〇、一句话结论

OfficeCLI 是面向 AI Agent 的 Office 自动化套件:一个单文件二进制(内嵌 .NET 运行时,零安装、零外部依赖),提供对 Word / Excel / PowerPoint 的读、改、建能力,并用「高保真渲染 + 确定性 JSON 路径寻址」让 Agent 既能算、也能看见自己生成的排版(render → look → fix 闭环)。经本机实测,README 宣称的核心能力全部成立。它当前仅作为 WorkBuddy 用户级技能 安装在本机(~/.workbuddy/skills/officecli/),可被本 WorkBuddy 实例直接调用。

一、项目研究结论(深度)

1.1 定位与本质 类别:面向 AI Agent 的 Office 文档自动化工具 / AI 中间件(Agent 与 .docx/.xlsx/.pptx 之间的适配层,本身不是聊天机器人)。 技术本质: 单文件二进制:内嵌 .

MarkItDown 使用指南(实战版)

基于本地实测(markitdown v0.1.6 · Python 3.13)编写,输出均为真实命令捕获,非示意。 项目:https://github.com/microsoft/markitdown | 许可证:MIT(可商用)| 维护:Microsoft AutoGen 团队

验证进度:9 种格式中,Excel / Word / HTML / ZIP / Image(EXIF) / Audio(容器元数据) 已在本地用真实文件跑通;PPT / PDF 表现与直觉有出入(已标注);YouTube 因本环境代理重置其 TLS 而未在本机跑通,命令与用法见第 5 节,可在能直连 YouTube 的机器上验证。

1. 它到底是什么

一句话:把任意文件(PDF / Office / 图片 / 音频 / 网页 / 压缩包…)转换成对 LLM 友好的 Markdown 的轻量 Python 工具。

本质定位:AI 应用链路里「模型前面的数据入口」——在喂给 RAG / 知识库 / 检索之前,先把杂乱格式洗干净。 设计哲学不追求高保真排版还原,只保留对机器有用的结构(标题、列表、表格、链接),输出给文本分析工具消费。

⚠️ 它不是排版转换工具。如果你要的是「合同归档 / 视觉一致的 PDF 重排」,它不合适。

2. 30 秒上手

使用 Python 自动进行工作量估算

安装依赖库

pip install typer python-docx

编写脚本 workload-evaluation.py import os import logging import shutil import random import zipfile import openpyxl import typer from copy import copy from openpyxl.utils import rows_from_range # 日志设置 logger = logging.getLogger() logger.setLevel(logging.DEBUG) ## 文件输出 file_handler = logging.FileHandler("log.txt") file_handler.setLevel(logging.DEBUG) ## 控制台输出 stream_handler = logging.StreamHandler() stream_handler.setLevel(logging.DEBUG) formatter = logging.

Python 自动生成周报

安装依赖库

pip install typer python-docx

编写生成个人周报的应用 制作个人周报模版 个人周报-{}-{}.xlsx 编写应用 weekly.py import shutil import openpyxl import typer from datetime import datetime, timedelta def get_weekly_info(): now = datetime.now() # 工作表的标题,格式: yymmdd(周一)-yymmdd(周五) monday = now-timedelta(now.weekday()) friday = monday+timedelta(4) sheet_title = '{}-{}'.format(monday.strftime('%y%m%d'), friday.strftime('%y%m%d')) # 报告日期,格式: yyyy/mm/dd(周四) report_date = now.strftime("%Y/%m/%d") # 计划的开始时间与结束时间 base_date = datetime(1899, 12, 30, 0, 0) work_tasks_begin_time = (monday-base_date).

Python办公自动化套件

操作 Word 文档

安装依赖库 python-docx

pip install python-docx

示例 from docx import Document from docx.shared import Inches document = Document() document.add_heading('Document Title', 0) p = document.add_paragraph('A plain paragraph having some ') p.add_run('bold').bold = True p.add_run(' and some ') p.add_run('italic.').italic = True document.add_heading('Heading, level 1', level=1) document.add_paragraph('Intense quote', style='Intense Quote') document.