有没有办法让browsermob-proxy提供HTTPS请求?

时间:2017-05-10 15:27:36

标签: python selenium proxy

我使用Selenium的ChromeDriver来测试某些js文件的加载时间。为此,我使用了browsermob-proxy python服务器。方法是

  1. 启动代理服务器
  2. 通过blacklist功能屏蔽某些网站。
  3. 使用参数proxy-server

    打开Chrome驱动程序

    chrome_options = webdriver.ChromeOptions()
    proxy_url = urlparse(Crawler.proxy.proxy).path
    chrome_options.add_argument('--proxy-server=%s' % proxy_url)
    Crawler.proxy.blacklist(".*my-js-lays-here.*", 200)
    Crawler.driver = webdriver.Chrome(path, chrome_options=chrome_options)

  4. 问题是我的代理无法处理HTTPS请求,这导致永久加载网站。我在browsermob-proxy文档中一直搜索,但没有找到关于如何处理https请求的任何代码示例。

1 个答案:

答案 0 :(得分:0)

尝试接受证书,如果仍然无效,请更改您的代理服务器设置

from selenium.webdriver import DesiredCapabilities

...

capabilities = DesiredCapabilities.CHROME.copy()
capabilities['acceptSslCerts'] = True
capabilities['acceptInsecureCerts'] = True

driver = webdriver.Chrome(options=chrome_options,
    desired_capabilities=capabilities,
    executable_path=config.CHROME_PATH)