2012-05-09 80 views
8

我正在嘗試使用Python看門狗來監視目錄中的更改。然而,當我嘗試運行快速入門例子:通過將其中的文件test.pyPython看門狗腳本無法正常工作

import time 
from watchdog.observers import Observer 
from watchdog.events import LoggingEventHandler 

if __name__ == "__main__": 
    event_handler = LoggingEventHandler() 
    observer = Observer() 
    observer.schedule(event_handler, path='.', recursive=True) 
    observer.start() 
    try: 
     while True: 
      time.sleep(1) 
    except KeyboardInterrupt: 
     observer.stop() 
    observer.join() 

,沒有顯示在我跑了它的終端窗口。是什麼導致了這種情況發生,我該如何解決?

+1

你在改變目錄嗎? –

+0

是的。我試過做了一些更改,包括創建和刪除文件夾,以及創建和刪除文件。 –

回答

14

嘗試在GitHub上的例子:https://github.com/gorakhargosh/watchdog

這個例子似乎不是在文檔的網站,沒有一個工作。

+0

謝謝。我將這個例子綁定到Github上,並且它工作。但是,它似乎沒有檢測到文件或文件夾刪除。 –

+1

發生了什麼 - 你看到任何錯誤? 這對我來說運行正常。你是否用一個參數運行它,將它指向一個目錄?例如:**'python watch.py​​「foo」'**?如果我使用:''python watch.py​​「。」'**,那麼它會監視當前目錄沒有問題,並在控制檯中顯示任何文件(包括創建和刪除文件和文件夾)中的消息。 – carboncrank

+0

我一直在用腳本將參數運行到目錄。該腳本打印出文件和文件夾創建事件,但仍不會打印刪除事件。 –