1. 程式人生 > 程式設計 >Python使用擴充套件庫pywin32實現批量文件列印例項

Python使用擴充套件庫pywin32實現批量文件列印例項

本文程式碼需要正確安裝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實現批量文件列印例項就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。