【问题标题】:Activate Ecc for Browsermob/Selenium为 Browsermob/Selenium 激活 Ecc
【发布时间】:2018-09-05 22:41:49
【问题描述】:

我遇到的问题是,使用 Selenium 和 browsermob 进行的测试对于某些网站来说变得非常慢。这是我当前设置服务器和代理的代码:

    server = Server(path_browsermob)
    server.start()
    proxy = server.create_proxy()
    co = webdriver.ChromeOptions()
    co.add_argument('--proxy-server={host}:{port}'.format(host='localhost', port=proxy.port))
    driver = webdriver.Chrome(path_driver, chrome_options=co)

我已经阅读到加快测试速度的一种方法是使用 EC 证书而不是 RSA。但是,如何使用上面的代码激活 ECC?

【问题讨论】:

  • 澄清一下,什么是ECC?
  • 椭圆曲线证书

标签: python selenium browsermob-proxy browsermob


【解决方案1】:

在了解 browsermob-proxy 和 SSL 证书的这个“问题”后,我也有同样的问题。

在 browsermob-proxy python 库中挖掘之后,看起来好像任何extra parameters 在创建代理时被传递到 URL 中。

这样,您应该能够将API documentation 中列出的任何参数传递到 create_proxy()。

这是我的代码 sn-p(虽然,我不确定如何查询代理以查看其是否实际设置)。

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from browsermobproxy import Server

#Create proxy server
bmp_server_opts = {"port": 8080}
bmp_server = Server("browsermob-proxy-2.1.4/bin/browsermob-proxy", options = bmp_server_opts)
bmp_server.start()
time.sleep(1)
proxy_server = bmp_server.create_proxy({"useEcc": True, "trustAllServers": True})
time.sleep(1)
selenium_proxy = proxy_server.selenium_proxy()

#Create Firefox options
firefox_opts = webdriver.FirefoxOptions()
firefox_profile = webdriver.FirefoxProfile()
firefox_opts.set_headless()
firefox_profile.set_proxy(selenium_proxy)

#Fire up a Firefox browser
firefox_browser = webdriver.Firefox(firefox_profile = firefox_profile, firefox_options = firefox_opts)
wait_load = WebDriverWait(firefox_browser, 10)
proxy_server.new_har("103398", options = {'captureHeaders': True, "captureContent": True})

虽然即使将 useEcc 设置为 true 仍然存在一些问题,我最终添加了 trustAllServers ,它忽略了 ssl 检查,但如果您需要接近真实的用户体验,我不确定这是否是正确的方法.无论哪种情况,我的 SSL/TLS 连接仍然相当慢。

【讨论】:

    猜你喜欢
    • 2019-04-02
    • 1970-01-01
    • 2018-04-09
    • 1970-01-01
    • 2021-10-20
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 2013-12-29
    相关资源
    最近更新 更多