2013-10-03 1 views
3

Так что я пытаюсь загрузить ранее сохраненные файлы cookie в свой веб-драйвер с помощью Selenium/Geb. Сначала я перейду в домен, а затем попытаюсь добавить файлы cookie. Но домен куки и домен URL не регистрируют друг с другом:Selenium addCookie получение Invalid Cookie Domain Exception, хотя я нахожусь в правильном домене

Caught: org.openqa.selenium.InvalidCookieDomainException: 
You may only add cookies that would be visible to the current domain: .domain=.example.com => .www.example.com 
Build info: version: '2.35.0', revision: '8df0c6bedf70ff9f22c647788f9fe9c8d22210e2', time: '2013-0 8-17 12:46:41' 
System info: os.name: 'Linux', os.arch: 'amd64', os.version: '3.2.0-48-generic', java.version: '1.6.0_27' 
Driver info: driver.version: unknown 

кажется домен печенья является .example.com и домен я получаю, когда я иду в http://example.com является .www.example.com. Единственное решение, о котором я могу думать, - это переопределение какого-либо метода для подмены моего текущего домена, но я понятия не имею, как это сделать.

+0

Покажи мне, как вы установите печенье? Код, пожалуйста. – plsgogame

+0

вы исправляете проблему? – plsgogame

+0

У меня такая же проблема. Любые подсказки? – JordanBelf

ответ

0

У меня была несколько схожая проблема, когда я получал сообщение об ошибке «Вы можете установить только файлы cookie для текущего домена» без видимых причин.

Я решил его удаляющей куки всех параметров, кроме имени и значения:

(Python)

cookies = pickle.load(open("cookies.pkl", "rb")) 
for cookie in cookies: 
    print cookie 
    new_cookie={} 
    new_cookie['name']=cookie['name'] 
    new_cookie['value']=cookie['value'] 
    driver.add_cookie(new_cookie) 
+1

Это может не работать для серверов, которые проверяют домен cookie - если сервер ожидает, что домен cookie будет .www.server.com, и вы позволяете браузеру сжимать его с помощью www.server.com, сервер может отклонить или игнорируй это. – GDorn

 Смежные вопросы

  • Нет связанных вопросов^_^