如何更改允许站点保存和读取cookie数据(推荐)和/或阻止第三方cookie

时间:2018-02-07 15:46:24

标签: selenium selenium-webdriver

我要求使用以下Cookie设置的Selenium测试网页

1. Allow sites to save and read cookie data (recommended)

2. Block third-party cookies

我找到了链接how to disable cookies using webdriver for Chrome and FireFox JAVA,它确实设置了全局级别而不是Cookie下的个别设置。

2 个答案:

答案 0 :(得分:2)

这取决于司机。使用Chrome和Firefox,您可以通过使用驱动程序设置首选项来设置行为。

Chrome允许/阻止Cookie的偏好设置:

// allow all cookies
"profile.default_content_setting_values.cookies": 1  // 1:allow, 2:block 
"profile.block_third_party_cookies": false

// block third party cookies
"profile.default_content_setting_values.cookies": 1  // 1:allow, 2:block
"profile.block_third_party_cookies": true

// block all cookies
"profile.default_content_setting_values.cookies": 2  // 1:allow, 2:block
"profile.block_third_party_cookies": true

使用Firefox的首选项允许/阻止cookie:

// allow all cookies
"network.cookie.cookieBehavior": 0

// block third party cookies
"network.cookie.cookieBehavior": 1

// block all cookies
"network.cookie.cookieBehavior": 2

要想出偏好,只需在目标浏览器中手动更改选项之前和之后比较首选项。

对于Chrome,该文件名为Preferences。要获取此文件夹的路径,请使用Chrome导航about:config

对于Firefox,该文件名为prefs.js。要获取此文件夹的路径,请使用Firefox导航about:profiles

答案 1 :(得分:1)

这些设置已经migrated to a new key

阻止和管理第三方 cookie 的新设置是:

// 1 = allow all cookies (default)
// 2 = block all cookies
"profile.default_content_setting_values.cookies": 1

// 0 = allow third party 
// 1 = block third party
// 2 = block third party in incognito (default)
"profile.cookie_controls_mode": 1