Selenium Webdriver获取cookie值

时间:2013-07-18 11:12:05

标签: ruby automation webdriver cucumber selenium-webdriver

我正在尝试获取Cookie值,但仍然会收到<Selenium::WebDriver::Driver:0x13a0e0e8 browser=:firefox>

的错误

我正在打电话

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

有什么我做错了吗?

3 个答案:

答案 0 :(得分:3)

使用Cookie的方法在Selenium :: WebDriver :: Options中定义 - 请参阅API docs

要访问这些cookie方法,您需要为驱动程序调用{​​{1}}方法:

manage

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

@browser.manage

请注意,@browser.manage.cookie_named("configsession") 会返回匹配的单个Cookie。 Cookie值是哈希值。因此,您可以通过执行以下操作获取cookie的值:

cookie_named

如果您想获取页面上所有Cookie的名称,请使用cookie = @browser.manage.cookie_named("configsession") cookie[:name] #=> "configsession" 方法:

all_cookies

答案 1 :(得分:1)

这对我有用:

Cookie cookie= driver.manage().getCookieNamed("sitename.session");  
String cookieVal= cookie.getValue();

答案 2 :(得分:0)

    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);
               }