我想每秒截图10秒。
我尝试使用线程和调度,但无法提出解决方案来满足我的问题。
def fun(original):
end_time = datetime.now() + timedelta(seconds=10)
while datetime.now() < end_time:
current = ImageGrab.grab()
current.save("current.png")
current = cv2.imread("current.png")
found = screenshot_comparison(original,current)
if found :
print("matched")
else :
print("didntMATCH")
fun(original)
我想每秒捕获屏幕截图10秒钟,然后将其与已经抓取的屏幕截图进行匹配。
答案 0 :(得分:4)
我建议使用Advanced Python Scheduler,更具体地说,使用其interval scheduler,例如:
sched = BlockingScheduler()
sched.add_job(yourFunction, 'interval', seconds=10)
sched.start()
编辑 这是一个更完整的示例:
from apscheduler.schedulers.blocking import BlockingScheduler
sched = BlockingScheduler()
def myFunction(testParam):
print("Message: {}".format(testParam))
if __name__ == '__main__':
sched.add_job(myFunction, 'interval', seconds=10, args=["Works!"])
sched.start()