py.Net.JS Ответов: 1

Есть ли в Python метод, который может просматривать текстовый файл на предмет изменений


Есть ли в Python метод, который может следить за текстовым файлом на предмет изменений, я пытаюсь отслеживать файл, и когда когда-либо его исправляют, мне нужно брать только обновленные данные?

возможно ли это в python?
Какой подход я должен принять ?

Что я уже пробовал:

Я попытался прочитать последние 1000 строк файла, но проблема в том, что количество обновленных строк может варьироваться, и это невозможно предсказать.

1 Ответов

Рейтинг:
0

Afzaal Ahmad Zeeshan

Таким образом, в основном вам нужна служба, которая прослушивает обновления файлов. Сам Python-это просто язык, и он не знает времени выполнения или функций ОС—спорно, да, но давайте избавим OP от таких технических деталей, пожалуйста. Вот почему ни один из языков не обладает этой особенностью. C++, C#, Java, нет. У них есть свои собственные среды выполнения, библиотеки и даже функции уровня ОС или ядра, которые используются для выполнения такого действия. Например, в .NET framework есть наблюдатели файловой системы, которые включают ваш C# (или VB.NET, или C++/CLI) программы для получения уведомлений об обновлении файловой системы.

Точно так же вам нужна библиотека наблюдателя файловой системы в Python. Один из таких пакетов можно легко найти в списке пакетов Python, Watchdog — документация watchdog 0.8.2[^].

Кроме того, в этом посте немного подробнее обсуждается, как все работает, используя сам bare-Python, Тим Золотой питон материал: смотреть каталог для изменений[^], и работает с использованием Win32 API в фоновом режиме, то есть зависит от ОС Windows.