gpt4 book ai didi

javascript - 自动化 "Save as HAR with Content"

转载 作者:行者123 更新时间:2023-12-03 09:56:35 30 4
gpt4 key购买 nike

我熟悉如何使用 Google Chrome Web Inspector 手动将网页保存为包含内容的 HAR 文件。我想自动化这个。

在搜索自动生成 HAR 文件的工具时,我找到了一些解决方案,但它们都没有保存资源的内容。

我尝试了以下方法,但没有任何运气:

  • https://github.com/ariya/phantomjs/blob/master/examples/netsniff.js
  • https://github.com/cyrus-and/chrome-har-capturer

  • 获取您请求的页面内容(原始 HTML)是可行的,但获取所有其他加载的网络资源(CSS、javascript、图像等)的内容是我的问题。

    最佳答案

    我认为自动生成 HAR 的最可靠方法是使用 BrowsermobProxy连同 chromedriver 和 Selenium。

    这是 python 中的一个脚本,用于以编程方式生成 HAR 文件,该文件可以集成到您的开发周期中。它还捕获内容。

    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()

    您还可以查看这个工具,它可以 headless 地从 Chrome 和 Firefox 生成 HAR 和 NavigationTiming 数据: Speedprofile

    关于javascript - 自动化 "Save as HAR with Content",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21668752/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com