Python Selenium Firefox 使用 cookie 进行私密浏览

Ja8*_*its 6 python cookies firefox selenium selenium-webdriver

我需要使用 Firefox 和 Python 通过 Webdriver 添加 cookie。它在正常模式下工作,但在private模式下无效。

from selenium import webdriver
capabities = webdriver.DesiredCapabilities.FIREFOX
capabities.update({"javascriptEnabled":True})
firefoxProfile = FirefoxProfile()
firefoxProfile.set_preference("browser.privatebrowsing.autostart", True)
driver = webdriver.Firefox(desired_capabilities=capabities, firefox_profile=firefoxProfile)
driver.get("http://httpbin.org/cookies")
driver.add_cookie({"name":"drag", "value": "lol", "domain": "httpbin.org"})
driver.get("http://httpbin.org/cookies")
Run Code Online (Sandbox Code Playgroud)

无论我刷新驱动程序多少次,cookie 都不会加载。document.cookie控制台日志中没有任何内容。它在 Chrome(未在隐身模式下测试)和 Firefox(非私有)中运行良好。

我知道在 selenium 私有模式中是多余的,我已经阅读了这个 SO 问题以及这个.

但我无法更改大部分代码。即使在 Firefox 的私有模式下,我也需要这个功能来设置 cookie。

火狐 66.0.1

Geckodriver 0.23.0 ( 2018-10-04)

Python 硒 3.14.1

编辑 1

我已经用 chrome(incognito) 测试过,它似乎工作

from selenium import webdriver
chrome_options = webdriver.ChromeOptions()
chrome_options.add_argument("--incognito")
capabities = webdriver.DesiredCapabilities.CHROME
capabities.update({"javascriptEnabled":True})
driver = webdriver.Chrome(desired_capabilities=capabities, chrome_options=chrome_options)
driver.get("http://httpbin.org/cookies")
driver.add_cookie({"name":"drag", "value": "lol", "domain": "httpbin.org"})
driver.refresh()
driver.get_cookies()
Run Code Online (Sandbox Code Playgroud)

Chromium 73.0.3683.75 基于 Ubuntu 构建,运行在 Ubuntu 18.04

ChromeDriver 2.43.600233 (523efee95e3d68b8719b3a1c83051aa63aa6b10d)

Python 硒 3.14.1

我也可以在这个答案中找到一些与 firefox 相关的问题,但不能完全理解它。那里使用的firefox版本也很旧,所以当前版本可能会有一些变化。