Python相关工具要么无法处理.doc(只能处理.docx),要么要求必须在windows环境下使用(如win32com)。当前大家的生产环境一般都是Linux环境,更换win服务器会造成一系列的连带问题,比如其他库是否兼容等等,非常麻烦,所以找到.doc/.wps在Linux下的处理方式非常重要。还好,最后被我找到了,那就是LibreOffice。
LibreOffice 命令行基本用法:
libreoffice --headless --convert-to <目标格式> <输入文件路径>
指定输出文件名:
libreoffice --headless --convert-to pdf --outdir /path/to/output output_filename.pdf input.docx
我的doc文件位于2022年这个文件夹下
import os
import subprocess
from docx import Document
doc_files = [file for file in os.listdir('./2022年') if file.endswith('.doc')]
work_dir = os.getcwd()
target_format = "docx"
outdir_path = os.path.join(work_dir, '2022年')
for doc_file in doc_files:
doc_path = os.path.join('./2022年', doc_file)
doc_path = os.path.abspath(doc_path)
# doc