python实现【wps】批量打印文件

概述

更新了功能–增添遍历子文件夹的功能,请点击这里【第二版】请点击这里—

        本文主要使用了3个库,os、time、pyautogui。由于代码比较简单,采用的是面向过程的方式进行敲码。pyauyigui库的主要功能是交互式操作window,提供了一些简单的操作函数。分为四个大的板块,分别是操作鼠标,操作键盘,提示框,截图功能。
        安装方式: pip3 install pyautogui / pip install pyautogui,如果安装失败,请注明python的版本。
参考文档:pyautogui
https://pyautogui.readthedocs.io/en/latest/

"""
使用说明:
			1.填写相应的参数即可
			2.文件夹允许有不需要打印的文件,但不支持存放在多个文件夹。在文件夹里的文件将不参与识别
			3..max_files参数必须小于等于需要打印的文件个数,由电脑的性能决定。不建议填太大。
			
参数说明:
			files:遍历所有的文件
			file_name:拼出完整的文件路径
			max_files:wps一次最多可加载的文档(一定小于需要打印的文档)
			path:文件夹路径
			file_extension:文件的后缀(不包含".")
"""
import os
import pyautogui as mouse
import time

def Operation_screen(num,max_files):
	time.sleep(3)
	mouse.PAUSE = 1
	mouse.hotkey("ctrl", "p")
	time.sleep(2)
	mouse.press("enter")
	time.sleep(3)
	if num == max_files:
		for i in range(max_files):
			mouse.hotkey("ctrl","w")
			time.sleep(1)

def open_file():
	num = 0
	path = input("请输入文件夹路径:")
	file_extension = input("请输入需要批量打印的文件后缀:")
	max_files = input("请输入wps一次性最多可加载的文档")

	files_list = os.listdir(path)
	for files in files_list:
		if (files.endswith(".%s" % file_extension) == True) and (files.startswith("~$") == False):  # 筛选以XXX为后缀的文件
			file_name = "%s\\%s" % (path, files)
			print("准备把--%s--添加进打印机序列" % file_name)
			os.system("start %s" % file_name)
			num += 1
			Operation_screen(num, max_files)

def main():
	open_file()
	os.system("start taskkill /f /t /im wps.exe")

if __name__ == '__main__':
	main()

# 面向对象版
import os
import pyautogui as mouse
import time

class runing(object):
	def __init__(self, path, file_extension, max_files):
		self.path = path
		self.file_extension = file_extension

	def open_file(self):
		files_list = os.listdir(self.path)
		for files in files_list:
			if (files.endswith(".%s" % self.file_extension) == True) and (files.startswith("~$") == False):  # 筛选以XXX为后缀的文件
				file_name = "%s\\%s" % (self.path, files)
				print("准备把--%s--添加进打印机序列" % file_name)
				os.system("start %s" % file_name)
				self.Operation_screen()

	def Operation_screen(self):
		time.sleep(3)
		mouse.PAUSE = 1
		mouse.hotkey("ctrl", "p")
		time.sleep(2)
		mouse.press("enter")
		time.sleep(3)
		mouse.hotkey("ctrl","w")
		time.sleep(1)

	def __del__(self):
		os.system("start taskkill /f /t /im wps.exe")




def main():
	path = input("请输入文件夹路径:")
	file_extension = input("请输入需要批量打印的文件后缀:")

	printer = runing(path, file_extension, max_files)
	printer.open_file()
	

if __name__ == '__main__':
	main()


        接下来会进一步完善代码,功能,有需要的伙伴可以点赞加好友联系作者。(需要.exe直接运行文件也可联系作者)



如有疑问或需数据请联系作者可留言博客或+
qq:1769190045

文章内容只供参考学习阅读,不可他用(特别商用)。侵权必追究其法律责任

————————部分内容参考他人博客文章————————

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值