所以,我写这个是为了监视文件夹中的新图片并打印找到的任何图片。它有效,但我假设有一种更强大/更有效的方法来解决这个问题,因为我希望它一次运行 5-6 小时。
我的主要问题是我不喜欢使用像这样的“open”while 循环....
有人会以不同的方式解决这个问题吗?如果是的话,有人愿意解释一下吗?
import os
import glob
import win32com.client
import time
from pywinauto.findwindows import find_window
from pywinauto.win32functions import SetForegroundWindow
printed = []
i = 10
while i < 1000000000000000:
files = glob.glob("C://Users//pictures/*.jpg")
for filename in files:
print filename
try:
if printed.index(str(filename)) >= 0:
print printed.index(filename)
print "Image found"
except ValueError:
printed.append(filename)
os.startfile(filename, "print")
shell = win32com.client.Dispatch("WScript.Shell")
time.sleep(2)
SetForegroundWindow(find_window(title='Print Pictures'))
shell.AppActivate("Print Pictures")
shell.SendKeys("{ENTER}")
i = i + 1
time.sleep(5)
最佳答案
下面的链接是相关帖子。您可以使用观察者来触发您的操作,而不是使用长 while 循环。
关于python - 监视文件夹和打印 - 不使用 "endless"while 循环的替代方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34425728/