我们可以在Selenium中清除浏览器的cookie。方法deleteCookieNamed将删除具有特定名称的cookie。所需删除的cookie名称作为参数传递给该方法。首先,我们将添加一个cookie,然后获取它,最后删除它。
driver.manage().deleteCookieNamed("foo");
另一种方法称为deleteAllCookies删除现有域中的所有cookie。首先,我们将添加cookie,然后获取并删除它们。
driver.manage().deleteAllCookies();
import java.util.Set; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class DeleteCookiesViaName{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("https://www.tutorialspoint.com/index.htm"); // wait of 4 seconds driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS); // setting name and value for cookie Cookie c = new Cookie("test", "selenium"); Cookie r = new Cookie("subject", "Java"); // cookie addition driver.manage().addCookie(c); driver.manage().addCookie(r); // obtain the cookies Set<Cookie> ck = driver.manage().getCookies(); //iterate through the cookies for (Cookie cookie : ck) { System.out.println("Cookie Name : "+cookie.getName()); System.out.println("Cookie Value : "+cookie.getValue()); // delete cookies by name driver.manage().deleteCookieNamed(cookie.getName()); } // obtain the cookies after delete Set ch = driver.manage().getCookies(); System.out.println("Cookie count after delete: "+ch.size()); } }
Code Implementation with deleteAllCookies.
import java.util.Set; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class DeleteCookiesAll{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.get("https://www.tutorialspoint.com/index.htm"); // wait of 4 seconds driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS); // setting name and value for cookie Cookie c = new Cookie("test", "selenium"); Cookie r = new Cookie("subject", "Java"); // cookie addition driver.manage().addCookie(c); driver.manage().addCookie(r); // obtain the cookies Set<Cookie> ck = driver.manage().getCookies(); //iterate through the cookies for (Cookie cookie : ck) { System.out.println("Cookie Name : "+cookie.getName()); System.out.println("Cookie Value : "+cookie.getValue()); } // delete cookies driver.manage().deleteAllCookies(); // obtain the cookies after delete Set ch = driver.manage().getCookies(); System.out.println("Cookie count after delete: "+ch.size()); } }
以上是使用Selenium WebDriver Java绑定清除浏览器Cookies的详细内容。更多信息请关注PHP中文网其他相关文章!