2

我正在通过 Selenium Python 脚本从 Chrome for YouTube 下载 HAR。代码片段:

chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--proxy-server={0}".format(url))
chrome_options.add_argument("--enable-quic")

self.driver = webdriver.Chrome(chromedriver,chrome_options = chrome_options)

self.proxy.new_har(args['url'], options={'captureHeaders': True})
self.driver.get(args['url'])
result = json.dumps(self.proxy.har, ensure_ascii=False)

我希望在下载 HAR 时使用 QUIC,但是当我通过 Wireshark Selenium 驱动程序查看数据包时仅使用 TCP。有没有办法强制 Chrome 驱动程序使用 QUIC?或者是否有 BMP 的替代品?

在这个问题How to capture all requests by page made by page in webdriver?Browsermob有什么替代品吗?并且有一个单独使用 Selenium 的解决方案,不需要任何 BMP。那么Chrome有可能吗?

4

1 回答 1

0

此问题的解决方法可能是:正常启动 Chrome(使用您的默认配置文件或创建另一个配置文件)并手动启用 quic。然后启动 chromedriver 并加载您的配置文件。

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = webdriver.ChromeOptions() 
options.add_argument("user-data-dir=/home/user/.config/google-chrome")
driver = webdriver.Chrome(executable_path="/home/user/Downloads/chromedriver", chrome_options=options)
于 2017-02-09T21:09:46.513 回答