【问题标题】:How do i get headers from Browsermob-proxy?如何从 Browsermob-proxy 获取标头?
【发布时间】:2020-02-01 19:04:48
【问题描述】:

我需要什么:包含流量/响应的内容/文本的会话的代理服务器日志文件。 我所拥有的:工作 silenium webdriver 和 browsermobproxy 服务器日志(*但没有标题!)。

browsermob-proxy 在 localhost:8080/proxy/8081 上工作

部分代码:

bmp_path = "path-to-browsermob-proxy.bat"
server = Server(path=bmp_path)
server.start()
proxy_server = server.create_proxy()
proxy_server.new_har()
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument('--proxy-server={}'.format(proxy_server.proxy))
browser = webdriver.Chrome("path-to-chromedriver.exe",chrome_options=chrome_options)
browser.get('www.demowebsite.com')

打印时:

pprint(proxy_server.har)

{"log":{"version":"1.2","creator":{"name":"BrowserMob Proxy","version":"2.1.4","comment":""}," pages":[{"id":"Page 0","startedDateTime":"2019-10-03T15:17:20.385+03:00","title":"Page 0","pageTimings":{"comment ":""},"comment":""}],"entries":[],"comment":""}}

到目前为止一切顺利,现在事情就是这样。

当我向 new_har 添加任何参数时,例如:

proxy_server.new_har(options={'captureHeaders': True})

或者:

proxy_server.new_har('test') # for ref param

总是从服务器获得 500 响应:

r = requests.put('%s/proxy/%s/har' % (self.host, self.port), payload)

访问 /proxy/8081/har 时出现问题。原因:服务器错误

{JSONDecodeError}预期值:第 1 行第 1 列 (char 0)

我好像无法向代理服务器发出请求? 感谢帮助

【问题讨论】:

    标签: python selenium-webdriver browsermob-proxy har


    【解决方案1】:

    尝试清除与代理实例关联的 DNS 缓存

    proxy_server.clear_dns_cache()
    

    【讨论】:

      【解决方案2】:

      这可能不会完全奏效,我面临着同样类型的问题。 这就是我所做的:

      rput = requests.put('http://localhost:8080/proxy/8082/har',headers={"Content-Type":"application/json"},data={"captureHeaders":True,"captureCookies":True,"captureContent":True})
      

      看起来 Browsermob 代理不喜欢使用 params 参数。相反,请尝试使用数据发送您的请求。

      请注意,我仍然无法获取所有标头和 cookie,如果您知道的话,如果您告诉我,我将不胜感激 :)

      【讨论】:

      • 这是个好主意。我得到 200 OK,但仍然没有标题
      • 对我来说,它只显示我的请求标头(这对于我正在做的事情来说已经足够好了)。它不显示响应标头。您是否尝试过从 PowerShell / CMD 初始化它?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-12
      • 2019-05-07
      • 1970-01-01
      相关资源
      最近更新 更多