Python使用扩展库pywin32实现批量文档打印实例


Posted in Python onApril 09, 2020

本文代码需要正确安装Python扩展库pywin32,建议下载whl文件进行离线安装。然后调用win32api的ShellExecute()函数来实现文档打印,系统会根据文档类型自动选择不同的软件进行打开并自动打印,如果要打印的是图片的话,需要手工确认一下。

关于ShellExecute()函数的参数含义请查阅Windows API或pywin32帮助文档。

import win32print
import win32api

for fn in ['1.txt', '2.txt', '3.txt', '4.docx']:
 win32api.ShellExecute(0,\
   'print',\

   fn,\
   win32print.GetDefaultPrinterW(),\
   ".",
  0)

补充知识:Python-EXECL批量打印

python版本为2.7

要用到的Python库:pywin32(pip install pywin32)

#coding=UTF-8
#-*-conding : gb2312 -*-

import os 
import win32com.client 
import win32api 
import time

dir_name = r'C:\Users\Administrator\Desktop\sqqk' #文件路径 
file_name=os.listdir(dir_name)  #路径下文件名称
file_dir =[os.path.join(dir_name,x) for x in file_name] #得到文件路径

b=len(file_dir)
i = 0
while i <= len(file_dir):
 xlApp = win32com.client.Dispatch('Excel.Application') #打开 EXCEL ,这里不需改动
 xlApp.Visible = 0   #不在后台运行
 xlApp.EnableEvents = False
 xlApp.DisplayAlerts = False  #显示弹窗
 xlBook = xlApp.Workbooks.Open(file_dir[i])  
 xlApp.ActiveWorkbook.Sheets(1).PageSetup.Zoom = False 
 xlApp.ActiveWorkbook.Sheets(1).PageSetup.FitToPagesWide = 1
 xlApp.ActiveWorkbook.Sheets(1).PageSetup.FitToPagesTall = 1
 #xlBook.Save()   #保存
 ename = xlApp.ActiveWorkbook.name  #获取打开工作表名称
 
 xlBook.PrintOut(1,1,)   #打印页数1到1
 xlApp.quit()   #退出
 print ename,"%d%%" %(((i+1.0)/b)*100.0)  #打印出打开工作表名称和当前百分比进度
 time.sleep(6)
 i = i + 1

以上这篇Python使用扩展库pywin32实现批量文档打印实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python外星人入侵游戏编程完整版
Mar 30 Python
Java及python正则表达式详解
Dec 27 Python
python爬虫基本知识
Mar 05 Python
详解tensorflow载入数据的三种方式
Apr 24 Python
pytorch训练imagenet分类的方法
Jul 27 Python
Python批量生成特定尺寸图片及图画任意文字的实例
Jan 30 Python
不归路系列:Python入门之旅-一定要注意缩进!!!(推荐)
Apr 16 Python
完美解决python3.7 pip升级 拒绝访问问题
Jul 12 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
Jun 24 Python
Python 实现二叉查找树的示例代码
Dec 21 Python
Python-typing: 类型标注与支持 Any类型详解
May 10 Python
python process模块的使用简介
May 14 Python
python3 自动打印出最新版本执行的mysql2redis实例
Apr 09 #Python
python实现处理mysql结果输出方式
Apr 09 #Python
python读取配置文件方式(ini、yaml、xml)
Apr 09 #Python
python数据分析工具之 matplotlib详解
Apr 09 #Python
使用python检查yaml配置文件是否符合要求
Apr 09 #Python
Python第三方包之DingDingBot钉钉机器人
Apr 09 #Python
python实现简单学生信息管理系统
Apr 09 #Python
You might like
PHP include_path设置技巧分享
2011/07/03 PHP
php实现图片局部打马赛克的方法
2015/02/11 PHP
php自定义函数实现二维数组按指定key排序的方法
2016/09/29 PHP
Thinkphp事务操作实例(推荐)
2017/04/01 PHP
PHP实现QQ登录的开原理和实现过程
2018/02/04 PHP
jQuery判断checkbox是否选中的3种方法
2014/08/12 Javascript
使用Sticker.js实现贴纸效果
2015/01/28 Javascript
jQuery.extend 函数及用法详细
2015/09/06 Javascript
JavaScript实现移动端滑动选择日期功能
2016/06/21 Javascript
jquery 判断是否支持Placeholder属性的方法
2017/02/07 Javascript
JS和jQuery通过this获取html标签中的属性值(实例代码)
2017/09/11 jQuery
编写React组件项目实践分析
2018/03/04 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
2018/03/06 Javascript
JavaScript实现仿Clock ISO时钟
2018/06/29 Javascript
js实现json数组分组合并操作示例
2019/02/12 Javascript
通过实例讲解JS如何防抖动
2019/06/15 Javascript
微信小程序如何利用getCurrentPages进行页面传值
2019/07/01 Javascript
Python升级导致yum、pip报错的解决方法
2017/09/06 Python
如何在sae中设置django,让sae的工作环境跟本地python环境一致
2017/11/21 Python
基于Python实现的ID3决策树功能示例
2018/01/02 Python
Python3实现的字典遍历操作详解
2018/04/18 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)
2020/01/08 Python
python实现低通滤波器代码
2020/02/26 Python
Jupyter Notebook 实现正常显示中文和负号
2020/04/24 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
高中生学习的自我评价
2013/12/14 职场文书
小学生新学期寄语
2014/01/19 职场文书
实习生评语
2014/04/26 职场文书
住宅质量保证书
2014/04/29 职场文书
乡镇计划生育工作汇报
2014/10/28 职场文书
店铺转让协议书
2015/01/29 职场文书
六一儿童节新闻稿
2015/07/17 职场文书
Nest.js参数校验和自定义返回数据格式详解
2021/03/29 Javascript
vscode中使用npm安装babel的方法
2021/08/02 Javascript
Tomcat项目启动失败的原因和解决办法
2022/04/20 Servers