Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để theo dõi các thay đổi của các tệp Python?

Việc giám sát các tệp để thay đổi bằng bất kỳ ngôn ngữ nào là khó khăn vì các vấn đề nền tảng. Trên python, có một thư viện đa nền tảng được sử dụng rộng rãi được gọi là watchdog cho phép theo dõi các thay đổi. Bạn có thể cài đặt nó bằng cách sử dụng:

$ pip install watchdog

Ví dụ

Để xem tệp có tên 'my_file.txt' bằng watchdog, bạn có thể sử dụng chương trình đơn giản:

import time
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class MyHandler(FileSystemEventHandler):
    def on_modified(self, event):
        print("Got it!")
event_handler = MyHandler()
observer = Observer()
observer.schedule(event_handler, path='.', recursive=False)
observer.start()
try:
    while True:
        time.sleep(1)
except KeyboardInterrupt:
    observer.stop()
observer.join()

Khi bạn chạy chương trình này và thực hiện bất kỳ thay đổi nào đối với bất kỳ tệp nào trong thư mục hiện tại, hàm on_modified từ lớp MyHandler sẽ được gọi cùng với sự kiện. Trong lớp MyHandler, bạn có thể xác định các hàm của riêng mình để xử lý các sự kiện. Trong đường dẫn, bạn có thể chỉ định các tệp / thư mục mà bạn muốn theo dõi. Để dừng chương trình này, hãy sử dụng Ctrl + C