Я использую Watchdog, чтобы следить за папкой, где мой компьютер генерирует файлы 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 в просматриваемую папку, наблюдатель игнорирует файл. Несмотря на то, что "*. Tmp" в атрибуте ignore_function, он игнорировал "
.temp " file. Как убедиться, что мой обработчик работает нормально?
Заранее спасибо.