我如何删除谷歌 chrome 饼干 selenium ?

j8ag8udp  于 2023-06-19  发布在  Go
关注(0)|答案(2)|浏览(141)

我正在尝试删除所有的谷歌浏览器cookie。我使用的代码是在selenium的网站上找到的:

var driver = new ChromeDriver();
driver.Manage().Cookies.DeleteAllCookies();

但是当我执行它时,一个dos页面出现了这个文本

Starting ChromeDriver 2.13.307647 (5a7d0541ebc58e69994a6fb2ed930f45261f3c29) on
port 25398
Only local connections are allowed.

google chrome启动我错过了什么?如何删除存储的Cookie?

1sbrub3j

1sbrub3j1#

方法DeleteAllCookies();将删除当前域Handling Cookies in Webdriver(http://seleniumeasy.com/selenium-tutorials/how-to-handle-cookies-in-selenium-webdriver)的所有cookie。
如果您想删除所有域的所有cookie,您应该使用Chrome设置中的解决方案“清除浏览数据”。
Here你有使用的例子。

szqfcxe2

szqfcxe22#

Chrome支持DevTools Protocol commands,如Network.clearBrowserCookies,您可以远程调用它来删除所有域的Cookie。Selenium不支持这个,因为它不是of the standard的一部分,并且它在Chrome以外的其他浏览器中不工作。
但是,您可以通过如下方式修补Selenium支持的命令来添加对这些命令的支持:

send_command = ('POST', '/session/$sessionId/chromium/send_command')
driver.command_executor._commands['SEND_COMMAND'] = send_command

现在您可以调用任何DevTools Protocol命令,如

driver.execute('SEND_COMMAND', dict(cmd='Network.clearBrowserCookies', params={}))

这将删除所有域的所有Cookie。

相关问题