Asyncio-powered inotify library
Project description
aionotify is a simple, asyncio-based inotify library.
Its use is quite simple:
import asyncio
import aionotify
# Setup the watcher
watcher = aionotify.Watcher()
watcher.watch(alias='logs', path='/var/log', flags=aionotify.Flags.MODIFY)
# Prepare the loop
loop = asyncio.get_eventloop()
async def work():
await watcher.setup(loop)
for _i in range(10):
# Pick the 10 first events
event = await watcher.get_event()
print(event)
watcher.close()
loop.run_until_completed(work())
loop.stop()
loop.close()
Events
An event is a simple object with a few attributes:
name: the path of the modified file
flags: the modification flag; use aionotify.Flags.parse() to retrieve a list of individual values.
alias: the alias of the watch triggering the event
cookie: for renames, this integer value links the “renamed from” and “renamed to” events.
Watches
aionotify uses a system of “watches”, similar to inotify.
A watch may have an alias; by default, it uses the path name:
watcher = aionotify.Watcher()
watcher.watch('/var/log', flags=aionotify.Flags.MODIFY)
# Similar to:
watcher.watch('/var/log', flags=aionotify.Flags.MODIFY, alias='/var/log')
A watch can be removed by using its alias:
watcher = aionotify.Watcher()
watcher.watch('/var/log', flags=aionotify.Flags.MODIFY)
watcher.unwatch('/var/log')
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
aionotify-0.2.0.tar.gz
(7.2 kB
view hashes)
Built Distribution
Close
Hashes for aionotify-0.2.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 385e1becfaac2d9f4326673033d53912ef9565b6febdedbec593ee966df392c6 |
|
MD5 | 7b27d9aba253789aaee2145805538f08 |
|
BLAKE2b-256 | d4ca104c3332c6c9be78108840fb3b08f40cfd2c598df4ce1cd7eb999416825c |