因此,我正在尝试创建一个处于活动状态的 python 应用程序,当文件在目录中创建,然后使用新文件开始幻灯片放映时。我理解并设法正确地创建和执行了 Watchdog-Observer,但现在我不知道如何继续。
在一个模块(mediachecker.py)中,观察者被写入,在模块 main.py 中,mediachecker.py 被执行。我现在想继续,只在创建文件时启动我的 slideshow.py 模块(所以当观察者检测到 on_created 事件时)。
我想我不太了解观察者或看门狗的概念,也不知道如何处理结果事件。
我希望你们能帮助我!
媒体检查器.py
import time
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
path = '/Users/muser/Documents/directory'
class NewEventHandler(FileSystemEventHandler):
def on_created(self, event):
print('New files created')
class Checker(NewEventHandler):
def watch(self):
event_handler = NewEventHandler()
observer = Observer()
observer.schedule(event_handler, path, recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
主文件
from mediachecker import Checker
def main():
checker = Checker()
checker.watch()
if __name__ == "__main__":
main()
slideshow.py 目前是空的,很快就会被写入