我正在使用看门狗来监视我的机器正在生成 CSV 文件的文件夹。但是在生成 CSV 文件之前,我的机器正在生成临时文件,然后将其转换为正确的 CSV。因此,为了忽略已放入正在监视的文件夹中的临时文件,我使用了 PatternMatchingEventHandler。
下面给出了相同的代码
class Watcher:
def __init__(self, args):
self.watch_dir = os.getcwd()
print(args[0])
self.directory_to_watch = os.path.join(self.watch_dir, args[1])
self.observer = Observer()
self.event_handler = Handler(patterns=["*.CSV"], ignore_patterns=["*.tmp"], ignore_directories=True)
#self.event_handler = Handler()
def run(self):
self.observer.schedule(self.event_handler, self.directory_to_watch, recursive=False)
self.observer.start()
try:
while True:
time.sleep(1)
except:
self.observer.stop()
print("Error")
self.observer.join()
当我将扩展名为 .temp 的文件放入正在监视的文件夹中时,观察者会忽略该文件。尽管在 ignore_function 属性中给出了“*.tmp” ,但它忽略了“.temp”文件。如何确保我的处理程序正常工作?
提前致谢。