Skip to main content

A simple script that monitors changes in the file system using polling.

Project description

Build Status

A simple script that monitors changes in the file system using polling. Useful for small, platform independent projects that don’t need complex libraries like great watchdog.

Facts or why you should take a good look at watchers.py:

  • No dependencies, only Python 3.2, 3.3 or 3.4

  • Supports Windows and Unix

  • Only one file, less than 12 KB

  • Simple and minimalistic

Example

A simple program that uses watchers.py to monitor specified directory in 2 seconds interval. It prints the message on a change in a file system.

from watchers import SimpleWatcher

def foo():
    print('Something has changed in directory!')
x = SimpleWatcher(2, 'path/to/dir', foo)
x.start()

More examples available at Github.

Why polling? WHY?!

Because it works everywhere and has no other dependencies than pure Python.

Installation

Install from PyPI using pip

pip install watchers.py

Or download a file watchers.py and use it in your project directly.

Performance

System:

Intel(R) Core(TM)2 Duo CPU E8400 @ 3.00GHz
Debian Linux 3.13-1-686 on USB flash drive

Checking 8000 files in 2000 directories took:

                Total:    Checking one file:
Watcher:        463 ms    0.058 ms
SimpleWatcher:  379 ms    0.047 ms

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

watchers.py-1.0.1-rc.1.tar.gz (4.8 kB view details)

Uploaded Source

File details

Details for the file watchers.py-1.0.1-rc.1.tar.gz.

File metadata

File hashes

Hashes for watchers.py-1.0.1-rc.1.tar.gz
Algorithm Hash digest
SHA256 f699621c7fd3cd9598dc359d47e4b1f2c0b0175d48703e2eec63c984d51fad39
MD5 3f34be89f49c8b314c343316fc8526e7
BLAKE2b-256 417d93d4dc5d47aade6b58ad55d0cffb9110b7f950730f2049db7513f9f67ea2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page