Python使用擴展庫pywin32實現批量文檔打印實例
本文代碼需要正確安裝Python擴展庫pywin32,建議下載whl文件進行離線安裝。然后調用win32api的ShellExecute()函數來實現文檔打印,系統會根據文檔類型自動選擇不同的軟件進行打開并自動打印,如果要打印的是圖片的話,需要手工確認一下。
關于ShellExecute()函數的參數含義請查閱Windows API或pywin32幫助文檔。
import win32printimport win32apifor 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 timedir_name = r’C:UsersAdministratorDesktopsqqk’ #文件路徑 file_name=os.listdir(dir_name) #路徑下文件名稱file_dir =[os.path.join(dir_name,x) for x in file_name] #得到文件路徑b=len(file_dir)i = 0while 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實現批量文檔打印實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。
相關文章:
1. React+umi+typeScript創建項目的過程2. ASP.NET Core 5.0中的Host.CreateDefaultBuilder執行過程解析3. SharePoint Server 2019新特性介紹4. ASP中常用的22個FSO文件操作函數整理5. 三個不常見的 HTML5 實用新特性簡介6. ASP調用WebService轉化成JSON數據,附json.min.asp7. .Net core 的熱插拔機制的深入探索及卸載問題求救指南8. 無線標記語言(WML)基礎之WMLScript 基礎第1/2頁9. 讀大數據量的XML文件的讀取問題10. 解決ASP中http狀態跳轉返回錯誤頁的問題
