2

我正在尝试获取 cookie 值,但不断收到错误<Selenium::WebDriver::Driver:0x13a0e0e8 browser=:firefox>

我打电话

@browser.cookie_named("configsession").each do |cookie|
  puts cookie[:name]

我做错了什么吗?

4

3 回答 3

5

使用 cookie 的方法在 Selenium::WebDriver::Options 中定义 - 请参阅API 文档

要访问这些 cookie 方法,您需要调用manage驱动程序的方法:

@browser.manage

要根据名称获取 cookie,您需要执行以下操作:

@browser.manage.cookie_named("configsession")

请注意,它会cookie_named返回一个匹配的 cookie。cookie 值是一个哈希值。因此,您可以通过执行以下操作获取 cookie 的值:

cookie = @browser.manage.cookie_named("configsession")
cookie[:name]
#=> "configsession"

如果要获取页面上所有cookies的名称,使用all_cookies方法:

driver.manage.all_cookies.each do |cookie|
    puts cookie[:name]
end
于 2013-07-18T13:06:57.030 回答
1

这对我有用:

Cookie cookie= driver.manage().getCookieNamed("sitename.session");  
String cookieVal= cookie.getValue();
于 2014-07-03T09:57:59.853 回答
-1
    Set<Cookie> cook =  driver.manage().getCookies();
    for(Cookie cooks : cook) 
    {

    System.out.println(cooks.getName());
    }

    Cookie t = driver.manage().getCookieNamed("_gid");
    if(t!=null){
    String s1 = t.getValue();
    System.out.println("The Cookie value is : " + s1);
               }
于 2017-07-13T12:13:39.263 回答