纯干货实操指南:快速实现软件批量打印档案的落地步骤
准备工作
完成批量打印需准备以下免费可直接获取的工具与文件:
- Windows 7及以上系统;
- Python 3.8+,下载地址:
https://www.python.org/downloads/windows/,安装时必须勾选Add Python to PATH选项; - 待打印的批量档案文件(以最常用的docx格式为例);
- 命令行依赖库:pywin32、python-docx,后续直接安装。
步骤1:整理档案文件
将所有需打印的档案放入同一个文件夹,命名规则需符合两点:
- 文件名使用有序数字后缀,如“档案_001.docx”“档案_002.docx”,不可含空格、、&等特殊字符;
- 文件夹路径不可含空格、中文,如路径示例:
D:\batch_files,避免脚本读取失败。
核心提醒:路径和文件名的特殊字符会导致脚本识别异常,必须严格遵守上述规则。
步骤2:安装Python依赖库
按Win+R组合键,输入cmd后回车打开命令提示符,复制粘贴以下命令,回车等待安装完成:
若提示权限不足,需右键点击开始菜单→选择Windows终端(管理员),再重复运行上述命令。确保Python已添加到系统PATH,否则pip命令无法被识别。
步骤3:编写批量打印脚本
新建文本文档,将其后缀名改为“.py”(如“批量打印档案.py”),用记事本打开,复制以下完整代码并保存:
```python import os from docx import Document from win32api import ShellExecute from win32con import SW_HIDE 需手动修改的配置项(重点) PRINT_FOLDER = r"D:\batch_files" 替换为你的档案文件夹路径,必须用r前缀 PRINTER_NAME = "" 留空默认用系统默认打印机,若需指定可填打印机名称,如"惠普 LaserJet Pro M126nw" FILE_EXT = ".docx" 需打印的文件格式,支持docx、pdf def batch_print_docx(): 筛选指定格式的文件 file_list = [f for f in os.listdir(PRINT_FOLDER) if f.endswith(FILE_EXT)] if not file_list: print("未找到指定格式的档案文件,请检查路径") return 遍历打印每个文件 for file in file_list: file_path = os.path.join(PRINT_FOLDER, file) print(f"正在打印:{file_path}") try: 静默打印,不弹出Word窗口 ShellExecute(0, "print", file_path, None, PRINT_FOLDER, SW_HIDE) 等待1秒避免打印冲突 import time time.sleep(1) except Exception as e: print(f"打印失败:{file},错误原因:{str(e)}") print("所有档案打印任务完成") if __name__ == "__main__": batch_print_docx() ```
仅需修改两处配置项:
1. PRINT_FOLDER:替换为你的档案文件夹的完整路径,例如档案在E盘“工作档案”文件夹则改为r"E:\work_files";
2. PRINTER_NAME:若需指定非默认打印机,可打开Windows设置→蓝牙和设备→打印机和扫描仪,复制打印机名称填入引号内,留空则用默认打印机。
步骤4:运行脚本执行批量打印
将保存好的“批量打印档案.py”放入档案文件夹的同级磁盘根目录(如D盘根目录),避免路径过深;右键该文件→选择“打开方式”→“Python 3.x”,等待命令提示符窗口显示“所有档案打印任务完成”即为操作结束,期间无需手动干预。
常见问题排查
问题1:pip命令无法识别
原因是安装Python时未勾选“Add Python to PATH”,解决方法:重新安装Python并勾选该选项,或手动添加环境变量:右键此电脑→属性→高级系统设置→环境变量→Path→编辑→添加Python安装路径(如C:\Python39)和Scripts路径(如C:\Python39\Scripts),确定后重启命令提示符。
问题2:打印时弹出Word窗口或卡住
原因是未配置静默打印,上述代码已内置SW_HIDE参数实现后台打印,若仍异常,关闭所有Office相关打印后台进程,再重新运行脚本。
问题3:PDF格式档案无法打印
若需打印PDF,可将代码中的配置项FILE_EXT改为“.pdf”,并替换try块内的打印代码为:
```python import subprocess 替换为你的PDF阅读器路径,示例用Adobe Acrobat subprocess.run([r"C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe", "/t", file_path, PRINTER_NAME], check=True) time.sleep(1) ```注意替换Adobe的路径为你系统中PDF阅读器的安装路径,或使用系统自带Edge,路径为"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"。