出海资源第一站
www.kas2.com

文件格式一个个转太慢?WorkBuddy四步出脚本

📌 高总AI办公笔记 出品

你有没有过这种时刻:领导甩来两百个 Word 要转 PDF,或者相机里一千五百张照片要压到 200KB 以内发邮件,你只能一个个右键”另存为”,点一下午手都麻了。

不是你勤快,是手动格式转换这件小事,最该交给脚本。WorkBuddy 不会替你点鼠标,但它能直接写出一段能跑的转换脚本,你复制过去跑一次就完事。

下面这套四步法,是我每次遇到”批量转格式”都用的,今天原样交给你。

第一步:把需求说清楚,先让它列方案

别一上来就”写个转换脚本”。先把你的文件和目标讲明白,让 WorkBuddy 先给你列几种可行方案,你挑最省事的:

我有两个批量转换需求:① 把 D:合同 下 200 个 .docx 转成 .pdf,保持原文件名;② 把 D:照片 下 1500 张 .jpg 统一缩到长边 1200px、压到 200KB 以内。我的电脑是 Windows,装了 Python 3.12 和 LibreOffice。请先别写代码,只列两种需求各自最稳妥的转换方案,并说明依赖(要装什么库、什么软件)。

它会回你一份方案对比。我每次都先卡这一步,因为不同文件类型,最优解法完全不同:Word 转 PDF 在 Windows 上最稳的是调 LibreOffice 无界面模式(一条命令搞定),而不是去折腾各种付费转换器;照片压缩则直接用 Python 的 Pillow 库,零成本。先认路,再上路。

第二步:让它把脚本写出来,附依赖和用法

方案定了,直接要成品。我的习惯是把”输入目录、输出目录、参数、异常处理”一次性讲清,让它产出一段能直接跑的脚本:

按上面定的方案,给我写一段 Python 脚本(Python 3.12):
1. 遍历指定目录下所有 .docx,调用 LibreOffice 无界面模式逐个转 PDF 到输出目录,文件名不变、后缀改 .pdf;
2. 遍历指定目录下所有 .jpg/.png,用 Pillow 把长边缩到 1200px、质量压到 85,输出到另一个目录;
3. 跳过已存在的输出文件(支持断点续跑),转换失败的记到 errors.log;
4. 开头打印”将要处理 N 个文件”,结束打印”成功 X / 失败 Y”。
请把依赖安装命令(pip 装什么)和用法写在脚本注释里。

这一步出来的就是真能跑的脚本,不是伪代码。我会要求它把用法写进注释,下次换目录直接改路径就行,不用再问一遍。

第三步:先拿 3 个样本试跑,别一上来干全量

全量跑之前,永远先拿样本验。我把脚本复制到文件旁,建一个只有 3 个文件的 test 目录,先跑一遍:

python
# 依赖:pip install pillow,并安装 LibreOffice(Windows 默认路径如下,按实际改)
# 用法:改下面 INPUT/OUTPUT 四个路径,命令行跑 python convert_files.py
import os, subprocess, logging
from PIL import Image

logging.basicConfig(filename="errors.log", level=logging.INFO,
                    format="%(asctime)s %(message)s")
LIBRE = r"C:Program FilesLibreOfficeprogramsoffice.exe"

INPUT_DOCX  = r"D:合同"          # 待转 Word 目录
OUTPUT_PDF  = r"D:合同_pdf"      # PDF 输出目录
INPUT_PHOTO = r"D:照片"           # 待压缩照片目录
OUTPUT_PHOTO = r"D:照片_small"   # 压缩后输出目录
MAX_SIDE, QUALITY = 1200, 85      # 长边上限 / JPEG 质量

os.makedirs(OUTPUT_PDF, exist_ok=True)
os.makedirs(OUTPUT_PHOTO, exist_ok=True)

def docx_to_pdf(src, dst):
    subprocess.run([LIBRE, "--headless", "--convert-to", "pdf",
                    "--outdir", dst, src], check=True)

def photo_shrink(src, dst, max_side=MAX_SIDE, quality=QUALITY):
    im = Image.open(src).convert("RGB")
    w, h = im.size
    if max(w, h) > max_side:
        r = max_side / max(w, h)
        im = im.resize((int(w*r), int(h*r)))
    im.save(dst, "JPEG", quality=quality)

docx_files = [f for f in os.listdir(INPUT_DOCX) if f.lower().endswith(".docx")]
photo_files = [f for f in os.listdir(INPUT_PHOTO)
               if f.lower().endswith((".jpg", ".jpeg", ".png"))]
print(f"将要处理:Word {len(docx_files)} 个,照片 {len(photo_files)} 张")

ok = 0
for f in docx_files:
    out = os.path.join(OUTPUT_PDF, f.rsplit(".", 1)[0] + ".pdf")
    if os.path.exists(out):
        continue                      # 跳过已存在,支持断点续跑
    try:
        docx_to_pdf(os.path.join(INPUT_DOCX, f), OUTPUT_PDF)
        ok += 1
    except Exception as e:
        logging.info(f"DOCX失败 {f}: {e}")

for f in photo_files:
    out = os.path.join(OUTPUT_PHOTO, f.rsplit(".", 1)[0] + ".jpg")
    if os.path.exists(out):
        continue
    try:
        photo_shrink(os.path.join(INPUT_PHOTO, f), out)
        ok += 1
    except Exception as e:
        logging.info(f"照片失败 {f}: {e}")

print(f"完成:成功 {ok} 个,失败见 errors.log")

样本跑通后,我再确认输出 PDF 能打开、照片确实变小了,才敢动全量。这一步能帮你挡掉 90% 的”跑一半报错全白干”。

第四步:全量跑 + 收尾对账

样本没问题,直接把 INPUT 改成真实大目录,跑全量。跑完让 WorkBuddy 帮你出个收尾清单:

脚本跑完了,成功 198 / 失败 2。请帮我写一段话,说明这次批量转换的结果:转了哪两类文件、各多少、失败的是哪些(附 errors.log 里的文件名),以及下次再跑怎么跳过已完成的。

它会给你一份能直接贴汇报的总结。我一般把 errors.log 里那两个失败文件单独手动处理,剩下的交给脚本,全程不用点一次”另存为”。

附:一套能直接抄的四步提示词

嫌上面拆开麻烦,把下面这段存备忘录,每次只换路径和参数:

【第一步·列方案】我有 N 个【文件类型】要转成【目标格式】,系统是【Windows/Mac】,已装【Python/LibreOffice】。先列最稳方案+依赖,别写代码。
【第二步·写脚本】按方案写 Python 3.12 脚本:遍历目录、调 LibreOffice/Pillow、跳过已存在、失败写日志、首尾打印进度。
【第三步·样本验】建 3 文件 test 目录先跑,确认输出可用再全量。
【第四步·收尾】成功 X/失败 Y,出一段能贴汇报的总结。

这套模板我帮三个同事搭过,从接到需求到全部转完,最快一次 11 分钟。你第一次可能要花 20 分钟调路径,调好后就是复制粘贴的事。

一个真实小例子:上周我救回一次合同批量转

说个真事。上周财务把 200 份采购合同 Word 丢给我,要转 PDF 归档。我第一反应不是手动,是让 WorkBuddy 按上面四步出脚本。样本试跑时发现:有 3 个 .docx 其实是”兼容模式”旧格式,LibreOffice 转出来排版歪了。我让 AI 加了一句”转之前先转成新版 .docx”,重跑后全部正常。整批 200 份,从接到到归档,22 分钟,我没点过一次另存为。

三个最容易踩的坑

坑一:不列方案直接写码。Word 转 PDF 你若用错库,Windows 没装 Word 就崩。先让 AI 说清依赖。

坑二:不跳已存在。全量跑一半断了,重跑又从头来。让脚本”输出存在就跳过”,断点续跑省一半时间。

坑三:不拿样本验。直接全量,错一个格式全目录白跑。3 个样本先挡 90% 雷。

什么时候该自己转,不用这招

适合”文件多、要统一格式/体积、要可重复”。三种情况我自己来:一是文件含机密,别整目录扔给云端 AI,路径和文件名脱敏后再用;二是只有两三个文件,手动更快;三是要保留复杂排版特效,得用专业软件逐项调。其余批量格式转换,基本都能用四步提速。

你用 WorkBuddy 批量处理文件最卡的是哪一步?是列方案、写脚本,还是样本试跑?在评论区告诉我你卡在哪,我下篇就拆那一环。觉得有用点个「在看」,转发给那个还在手动另存为的同事。

#WorkBuddy #AI办公 #效率工具

赞(0) 打赏
未经允许不得转载:卡神 » 文件格式一个个转太慢?WorkBuddy四步出脚本
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏支持

支付宝扫一扫打赏

微信扫一扫打赏

'); })();