問題タブ [python-watchdog]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1699 参照

python - OS X 上の Python のウォッチドッグ ライブラリ -- 完全なイベント パスが表示されない

Mac で Python のWatchdog ライブラリを使い始めたばかりで、期待どおりに動作することを確認するためにいくつかの基本的なテストを行っています。残念ながら、そうではありません。ファイル自体へのパスではなく、イベントが登録されたファイルを含むフォルダーへのパスしか取得できないようです。

以下は、イベントが登録されるたびにイベントの種類、パス、および時刻を出力する簡単なテスト プログラム (Watchdog によって提供された例からわずかに変更されたもの) です。

src_path 変数には、イベントが発生したファイルのパスが含まれている必要があります。

ただし、私のテストでは、ファイルを変更すると、src_path はファイル自体へのパスではなく、ファイルを含むフォルダーへのパスのみを出力します。たとえばmoon.txt、フォルダー内のファイルを変更するeuropaと、プログラムは次の出力を出力します。

変更されたファイルへのフル パスを取得するには、何を変更する必要がありますか?

0 投票する
1 に答える
976 参照

python - Python ウォッチドッグ、特定のファイルが変更されると、変更されたディレクトリのみが作成されます

私はサイドプロジェクトでpythonウォッチドッグを使用していますが、ファイルが作成/変更されたときにウォッチドッグのみが表示されることがあるという問題に遭遇していました

私が期待したものの代わりに

または (emacs 一時ファイル)

現在、LoggingEventHandler をいじっているだけでなく、サブクラス化して問題を回避できるかどうかを確認しています。特定のファイル (隠しファイルのように見える) が原因で、ウォッチドッグがディレクトリのみが変更されたと言い、ファイル変更イベントも吐き出さないのはなぜですか?

0 投票する
1 に答える
1025 参照

python - Pythonでファイルを監視し、信頼できるアップロードを行うためのベストプラクティスは?

Python 2.7 で Windows 用のデスクトップ アプリケーションを構築しています。このアプリケーションの主な機能は、新しいファイルのフォルダーを監視することです。このフォルダーに新しいファイルが表示されるたびに、アプリはそのファイルをリモート サーバーにアップロードします。リモート サーバー上のプロセスは、ファイルのデータベース レコードを作成し、そのレコードにリモート ファイル パスを格納します。

現在、ウォッチドッグを使用してディレクトリを監視し、 httplibをファイルのアップロードに使用しています。

  1. ネットワークの状態やインターネット接続の切断に関係なく、新しいファイルが確実にアップロードされるようにするには、どのようなアプローチを取る必要がありますか?

    更新:信頼できるアップロードとは、アプリが再起動してもアプリがファイルをアップロードするということです。ドロップボックスのように。一部のファイルは非常に大きい (> 100 MB) ため、コードをラップしtry / catchてアップロードを開始するなどの単純なソリューションはあまり効率的ではありません。Dropbox が librsync を使用していることは知っていますが、この場合はやり過ぎかもしれません。

  2. アップロード中にソース ファイルが変更された場合はどうなりますか? アップロードを停止して最初からやり直す必要がありますか?

0 投票する
0 に答える
60 参照

python - FileSystemHandler が削除を検出しない

ファイルの変更を追跡し、変更があった場合にサーバーを更新する、Dropbox に似たファイル ウォッチャーを作成しようとしています。残念ながら、私が使用している Watchdog の fileSystemHandler の実装では、ファイルの削除を検出できません。ここにオブザーバーコードがあります

そして、ここに FileSystemHandler を開始するコードがあります

0 投票する
1 に答える
3288 参照

python - Python ウォッチドッグの重複イベント

Windows の特定のディレクトリに追加された .jpg 写真のファイルを監視するために、修正したウォッチドッグの例を作成しました。

ファイルが追加されると、on_created と on_modified の両方が呼び出されることに気付きました。この問題に対処するために、on_modified メソッドのみを使用することにしました。ただし、これにより複数のコールバックが発生することに気付き始めていますが、今回は on_modified メソッドに対してです!

なぜこれが起こっているのか、一生理解できません!それも一貫していないようです。誰かがこの問題に光を当てることができれば、それは大歓迎です。

同様の投稿がありましたが、Linux 向けでした: python watchdog modified and created duplicate events

0 投票する
1 に答える
4169 参照

python - python-watchdog を使用してフォルダーを監視していますが、ファイルの名前を変更すると、新しいファイル名を確認する方法が見つかりませんでした

ウォッチドッグで監視されているファイルの名前を変更すると、on_moved イベント トリガーが生成されます。私が抱えている問題は、ファイルが移動/名前変更されたものを知る方法がないことです(ファイルの名前が変更されたときに on_moved イベントトリガーも発生するため)。これをウォッチドッグに組み込む方法はありますか、または私が書いているプログラムで回避策を構築する必要がありますか?

ここにいくつかのサンプルコードがあります

コードは、イベントが発生するたびに、発生したイベントの種類とファイル/フォルダーへのパスを出力します。監視するフォルダーへのパスである 1 つのパラメーターを取ります。