1.登陆
Selenium-java 登录后重定向页面(页面跳转后)刷新页面,获取cookie_51CTO博客_selenium跳转到新页面
final String beforeUrl = chromeDriver.getCurrentUrl();// 获取登录前的url地址
while (chromeDriver.getCurrentUrl().equals(beforeUrl)){// 不断的获取地址判断一下,地址有没有变
// 页面没有跳转就让他等待,等待自己重定向到登录后的页面,然后再获取cookie时就是正确的cookie
}
// 到这里说明页面进行了跳转
// 进行刷新页面获取cookie
chromeDriver.navigate().refresh();// 刷新页面获取cookie,不然会导致cookie数据有问题
//获得cookie
Set<Cookie> coo = manage.getCookies();// 得到所有cookie
关于cookie解析处理成 键值对的形式,也就是处理成请求中cookie的格式
k1=v1;k2=v2;k3=...
/** cookie数据的处理
* @param cookies 传入cookie的集合
* @return k1=v1;k2=v2; 这种形式的cookie字符串 */
private String parseCookieSet(Set<Cookie> cookies) {
if (cookies == null) {
return "";
}
System.out.println("\n解析前cookie是" + cookies.toString());
String cookieString = "";
for (Cookie cookie : cookies) {
if (StringUtils.hasText(cookie.getValue())) {// 为空的cookie则去除
cookieString += (cookie.getName() + "=" + cookie.getValue() + ";");
}
}
System.out.println("解析后:\n" + cookieString);
return cookieString;
}