如何使用selenium删除Google Chrome Cookie?

时间:2015-02-06 12:58:38

标签: google-chrome selenium cookies

我正在尝试删除所有Google Chrome曲奇饼干。我使用的代码是我在selenium的网站上找到的:

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

但是当我执行它时会出现带有此文本的dos页面

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

谷歌Chrome开始。我错过了什么?如何删除存储的cookie?

2 个答案:

答案 0 :(得分:2)

方法DeleteAllCookies();将删除当前域 [Handling Cookies in Webdriver]的所有Cookie。

如果您要删除所有域名的所有Cookie,请使用Chrome设置“清除浏览数据”中的解决方案。

Here您有使用示例。

答案 1 :(得分:0)

Chrome支持Network.clearBrowserCookies之类的DevTools Protocol commands,您可以远程调用。硒没有接口,因为它不是任何标准的一部分。

但是,您可以通过修补Selenium支持的命令来添加对这些命令的支持,如下所示:

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

现在您可以调用任何DevTools协议命令,例如

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

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