4

Google Chrome Web Inspector を使用して、Web ページをコンテンツとともに HAR ファイルとして手動で保存する方法に精通しています。これを自動化したい。

HAR ファイルの生成を自動化するツールを検索したところ、いくつかの解決策が見つかりましたが、リソースの内容を保存するものはありませんでした。

私は運なしで次のことを試しました:

要求したページのコンテンツ (生の HTML) を取得することは可能ですが、ロードする他のすべてのネットワーク リソース (CSS、javascript、画像など) のコンテンツを取得することが私の問題です。

4

3 に答える 3

5

HAR の生成を自動化する最も信頼できる方法は、Chromedriver と Selenium と共に BrowsermobProxy使用することだと思います。

これは、開発サイクルに統合できる HAR ファイルをプログラムで生成する Python のスクリプトです。また、コンテンツをキャプチャします。

from browsermobproxy import Server
from selenium import webdriver
import os
import json
import urlparse

server = Server("path/to/browsermob-proxy")
server.start()
proxy = server.create_proxy()

chromedriver = "path/to/chromedriver"
os.environ["webdriver.chrome.driver"] = chromedriver
url = urlparse.urlparse (proxy.proxy).path
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--proxy-server={0}".format(url))
driver = webdriver.Chrome(chromedriver,chrome_options =chrome_options)
proxy.new_har("http://stackoverflow.com", options={'captureHeaders': True,'captureContent':True})
driver.get("http://stackoverflow.com")    
result = json.dumps(proxy.har, ensure_ascii=False)
print result
proxy.stop()    
driver.quit()

また、ヘッドレスで Chrome と Firefox の両方から HAR と NavigationTiming データを生成するこのツールをチェックアウトすることもできます: Speedprofile

于 2015-08-16T13:50:32.817 に答える
2

phantomjsを見ると、HAR http://phantomjs.org/network-monitoring.htmlとしてエクスポートされているようです。

于 2014-02-14T16:59:59.797 に答える
1

http プロキシを使用してコンテンツを保存できます。Windows では、無料のfiddlerを使用できます。Mac と Linux では、 Charles Proxyを使用できますが、無料ではありません。

これは Fiddler のスクリーンショットで、ヘッダーを含むすべての要求を保存することを選択できます。

ここに画像の説明を入力

于 2014-02-19T21:41:41.190 に答える