Попробуйте изменить IN_MODIFY
на IN_CLOSE_WRITE
.Событие IN_CLOSE_WRITE
наступает при закрытии доступного для записи файла.Это должно произойти только один раз, если только программа, копирующая файл, не захочет закрыть файл несколько раз.
Возможно, вам больше всего нужно это изменение, но если нет, то этот основной код может быть очень полезным инструментом для просмотра того, какие события происходят, когда.С его помощью вы сможете определить, какое событие использовать.
# Example: loops monitoring events forever.
#
import pyinotify
# Instanciate a new WatchManager (will be used to store watches).
wm = pyinotify.WatchManager()
# Associate this WatchManager with a Notifier (will be used to report and
# process events).
notifier = pyinotify.Notifier(wm)
# Add a new watch on /tmp for ALL_EVENTS.
wm.add_watch('/tmp', pyinotify.ALL_EVENTS)
# Loop forever and handle events.
notifier.loop()