类型的参数不可迭代或如何在logger响应中查找子字符串

时间:2017-03-04 14:36:21

标签: python watchdog

当文件夹中出现带扩展名的文件时,我尝试做某事。我正在使用看门狗,但它不会让我在它的响应中找到子串。它说 TypeError:'FileModifiedEvent'类型的参数不可迭代

看门狗的原始快速入门代码为我提供了记录器报告,但是我找不到在logger中找到不在.txt文件中的子串的方法

if __name__ == "__main__":
    logging.basicConfig(level=logging.INFO,
                        format='%(asctime)s - %(message)s',
                        datefmt='%Y-%m-%d %H:%M:%S')
    path = sys.argv[1] if len(sys.argv) > 1 else '.'
    event_handler = LoggingEventHandler()
    observer = Observer()
    observer.schedule(event_handler, path, recursive=True)
    observer.start()

所以我编写了自己的类,但它给了我TypeError

    class MyHandler(FileSystemEventHandler):
        def on_modified(self, event):
            test = 'mp4' in event
            print(test)

如何将事件作为字符串使用?

1 个答案:

答案 0 :(得分:1)

使用FileSystemEvent的{​​{3}}属性:

class MyHandler(FileSystemEventHandler):
    def on_modified(self, event):
        test = 'mp4' in event.src_path
        print(test)