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 17 Python
在Python中操作时间之mktime()方法的使用教程
May 22 Python
Python中list列表的一些进阶使用方法介绍
Aug 15 Python
Python使用gensim计算文档相似性
Apr 10 Python
Python实现对象转换为xml的方法示例
Jun 08 Python
Python使用QRCode模块生成二维码实例详解
Jun 14 Python
python爬虫之urllib3的使用示例
Jul 09 Python
python3.x提取中文的正则表达式示例代码
Jul 23 Python
Python实现微信小程序支付功能
Jul 25 Python
python实现计算器功能
Oct 31 Python
Python多线程threading join和守护线程setDeamon原理详解
Mar 18 Python
Python3爬虫RedisDump的安装步骤
Feb 20 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 error_log 函数的使用
2009/04/13 PHP
Admin generator, filters and I18n
2011/10/06 PHP
php解决抢购秒杀抽奖等大流量并发入库导致的库存负数的问题
2014/06/19 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
PHP脚本监控Nginx 502错误并自动重启php-fpm
2015/05/13 PHP
PHP互换两个变量值的方法(不用第三变量)
2016/11/14 PHP
laravel框架数据库配置及操作数据库示例
2019/10/10 PHP
this[] 指的是什么内容 讨论
2007/03/24 Javascript
Jquery方式获取iframe页面中的 Dom元素
2014/05/07 Javascript
jQuery 实现自动填充邮箱功能(带下拉提示)
2014/10/14 Javascript
JavaScript函数详解
2015/02/27 Javascript
详解Javacript和AngularJS中的Promises
2016/02/09 Javascript
基于JavaScript实现焦点图轮播效果
2017/03/27 Javascript
react-native组件中NavigatorIOS和ListView结合使用的方法
2017/09/30 Javascript
layui实现table加载的示例代码
2018/08/14 Javascript
javascript中UMD规范的代码推演
2018/08/29 Javascript
微信小程序—setTimeOut定时器的问题及解决
2019/07/26 Javascript
微信小程序scroll-view的滚动条设置实现
2020/03/02 Javascript
[06:07]辉夜杯现场观众互动 “比谁远送显示器”
2015/12/26 DOTA
windows下python模拟鼠标点击和键盘输示例
2014/02/28 Python
手动实现把python项目发布为exe可执行程序过程分享
2014/10/23 Python
Python使用当前时间、随机数产生一个唯一数字的方法
2017/09/18 Python
Python运维开发之psutil库的使用详解
2018/10/18 Python
使用python3构建文件传输的方法
2019/02/13 Python
利用python-docx模块写批量生日邀请函
2019/08/26 Python
Python 使用 prettytable 库打印表格美化输出功能
2019/12/26 Python
Python while循环使用else语句代码实例
2020/02/07 Python
python 窃取摄像头照片的实现示例
2021/01/08 Python
详解Sticky Footer 绝对底部的两种套路
2017/11/03 HTML / CSS
Bose法国官网:购买耳机、扬声器、家庭影院、专业音响
2017/12/21 全球购物
Napapijri西班牙在线商店:夹克、外套、运动衫等
2020/11/05 全球购物
几个Linux面试题笔试题
2016/08/01 面试题
勤俭节约倡议书
2014/04/14 职场文书
如何写好竞聘报告
2019/04/03 职场文书
超级实用的公文标题大全!
2019/07/19 职场文书
Python趣味挑战之用pygame实现简单的金币旋转效果
2021/05/31 Python