有趣生活

当前位置:首页>科技>python调用打印机打印文档linuxPython实现打印机批量打印文件

python调用打印机打印文档linuxPython实现打印机批量打印文件

发布时间:2026-07-21阅读(2)

导读有大量的文件要打印,一个一个点开打印,机械重复?Python,help!环境准备:python3.8、pywin32、os首先,需要安装第三方库pywin3....

有大量的文件要打印,一个一个点开打印,机械重复?Python, help!

环境准备:

python3.8、pywin32、os

首先,需要安装第三方库pywin32,这样才能用Python调用Windows API(应用程序编程接口)。

若未安装,则运行"cmd",输入"pip3 install pywin32",等待安装完成即可。

C:\Users\Administrator>cd..C:\Users>cd..C:\>C:\>cd python38C:\Python38>pip3 install pywin32

(启动cmd,进入python目录,然后安装第三方库pywin32)

然后导入win32api,定义一个打印函数Print,以便后续重复调用。函数里面主要的部分就是win32api.ShellExecute。它用于启动应用程序,其第2个参数用于指定操作,这里的"print"表示启动打印应用程序。其余参数见如下程序部分的注释。

#定义打印函数,以便重复调用import win32apidef Print(fileName): win32api.ShellExecute ( 0, #指定父窗口句柄,搞不懂 "print", #指定操作,这里的"print"表示启动打印应用程序 fileName, #要打印的文件名 None, #打印机设置,若是"None",则使用windows设置的默认打印机 ".", #指定默认目录,照抄的,搞不懂 0 #若fileName参数是一个可执行程序,则此参数指定程序窗口的初始显示方式,否则此参数应设置为0 )

打印函数定义好后,就可以指定文件夹,将其中待打印的文件逐个送入打印函数,进行批量打印了。

高能预警这个打印函数非常NB,包治百病,只要是平时工作中能打印的文件都能打印,不管是word,txt,还是excel,PPT,PDF,通吃。你要做的就只是事先调整好文档里的打印设置,其他就只等着收打印稿了。

#获取待打印文件的路径import ospath=文件 #文件所在文件夹files = [path "\\" i for i in os.listdir(path)] #获取文件夹下的文件名,并拼接完整路径files>>[文件\\test.docx, 文件\\test.txt]

批量打印:

#批量打印for file in files: Print(file)

import win32apiimport os#定义打印函数,以便重复调用def Print(fileName): win32api.ShellExecute ( 0,#指定父窗口句柄,搞不懂 "print",#指定操作,这里的"print"表示启动打印应用程序 fileName, #要打印的文件名 None,#打印机设置,若是"None",则使用windows设置的默认打印机 ".",#指定默认目录,照抄的,搞不懂 0 #若fileName参数是一个可执行程序,则此参数指定程序窗口的初始显示方式,否则此参数应设置为0 )#获取待打印文件的路径path=d:\d12 #文件所在文件夹#或 path= input("请在英文输入法状态下输入文件目录,然后回车运行。文件目录:") files = [path "\\" i for i in os.listdir(path)] #获取文件夹下的文件名,并拼接完整路径filesPrint(files) #获取文件夹下的文件完整路径#批量打印for file in files: Print(file)

(完整代码)

(启动图)

(文件内容)

打印结果就不展示了。

慢着,老板说要重视绿色环保,节约用纸,请大家双面打印。那“双面打印”怎么在程序设置啊?额......双面打印不在程序里设置,在打印机里设置。在你的默认打印机上点右键,选择“打印首选项”,然后在“双面打印”那里选“是,翻转”。每个打印机的设置界面可能有差异,但大致差不多就酱。

TAGS标签:  python  调用  打印机  打印  文档  python调用打印

Copyright © 2024 有趣生活 All Rights Reserve吉ICP备19000289号-5 TXT地图HTML地图XML地图