問題タブ [browsermob-proxy]
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.
python - Python を使用した不完全な HAR リスト: Browsermobproxy、selenium、phantomJS
Python にはかなり慣れていないので、やってみることで学ぶので、このプロジェクトに挑戦してみようと思いました。特定の Web サイトの Google アナリティクス リクエストを検出するスクリプトを作成しようとすると、リクエスト ペイロードが解析され、処理が行われます。
要件は次のとおりです。
- ユーザーに 2 つの URL を要求します (2 つの異なる HAR ペイロードのペイロードを比較するため)。
- Selenium を使用して 2 つの URL を開き、browsermobproxy/phantomJS を使用してすべての HAR を取得します
- HAR をリストとして保存する
- すべての HAR ファイルのリストから、ペイロードを含む Google アナリティクス リクエストを見つけます。
- Google アナリティクス タグが見つかった場合は、ペイロードの解析などの処理を行います。ペイロードの比較などを行います。
問題: Google アナリティクスがあることがわかっている Web サイト (nytimes.com など) で、取得した HAR (プログラムなど) が不完全な場合があります。「GA Not found」と表示されますが、これは完全な HAR がキャプチャされていないためであり、一致する HAR を見つけるために正規表現が実行されたときに、そこにはありませんでした。この問題は断続的に発生し、常に発生するわけではありません。何か案は?
なんらかの依存関係または遅延が原因で、スクリプトが進行し、完全な HAR がキャプチャされなかったと考えています。「トラフィックが停止するのを待つ」ことを試みましたが、何かが間違っていたのかもしれません。
また、おまけとして、このスクリプトをかなり遅く実行する方法について、あなたが提供できる助けをいただければ幸いです。私が述べたように、私はPythonが初めてなので、簡単に行きます:)
これは私がこれまでに得たものです。