在Selenium Python中添加和删除 Cookie
Selenium 的Python模块是为使用Python执行自动化测试而构建的。 Selenium Python绑定提供了一个简单的 API 来使用Selenium WebDriver 编写功能/验收测试。要使用Selenium Python打开网页,请查看 - 使用 get 方法导航链接 - Selenium Python。仅仅能够去一些地方并不是很有用。我们真正想做的是与页面交互,或者更具体地说,与页面中的 HTML 元素交互。有多种使用Selenium查找元素的策略,checkout – Locating Strategies。 Selenium WebDriver 提供了各种有用的方法来控制会话,或者换句话说,浏览器。例如,添加 cookie、按下返回按钮、在选项卡之间导航等。
使用 cookie 通常是必不可少的,可能需要手动添加或手动删除 cookie 以实现网站的某些阶段,例如身份验证。在selenium Python中使用 cookie 的各种方法是 -
add_cookie 驱动方法
add_cookie
方法用于将 cookie 添加到当前会话。此 cookie 可由网站本身或您使用。
句法 -
add_cookie(cookie_dict)
例子 -
现在可以使用 add_cookie 方法作为驱动方法,如下所示 -
driver.add_cookie({‘name’ : ‘foo’, ‘value’ : ‘bar’})
在项目访问中检查 add_cookie 方法的个别实现 – add_cookie 驱动方法。
get_cookie 驱动方法
get_cookie
方法用于获取具有指定名称的 cookie。如果找到则返回 cookie,否则返回 None。
句法 -
driver.get_cookie(name)
例子 -
现在可以使用 get_cookie 方法作为驱动方法,如下所示 -
driver.get("https://www.geeksforgeeks.org/")
driver.get_cookie("foo")
在项目访问中检查 get_cookie 方法的个别实现 – get_cookie 驱动方法。
delete_cookie 驱动方法
delete_cookie
方法用于删除具有指定值的 cookie。
句法 -
driver.delete_cookie(name)
例子 -
现在可以使用 delete_cookie 方法作为驱动方法,如下所示 -
driver.get("https://www.geeksforgeeks.org/")
driver.delete_cookie("foo")
在项目访问中检查 delete_cookie 方法的个别实现 - delete_cookie 驱动程序方法。
get_cookies 驱动方法
get_cookies
方法用于获取当前会话中的所有 cookie。它返回一组字典,对应于当前会话中可见的 cookie。
句法 -
driver.get_cookies()
例子 -
现在可以使用 get_cookies 方法作为驱动方法,如下所示 -
driver.get("https://www.geeksforgeeks.org/")
driver.get_cookies()
要检查项目中 get_cookies 方法的个别实现,请访问 – get_cookies 驱动程序方法。
如何在Selenium Python中使用 cookie?
为了演示, Selenium Python中的 cookie。让我们访问 https://www.geeksforgeeks.org/ 并对驱动程序对象进行操作。
程序 -
# import webdriver
from selenium import webdriver
# create webdriver object
driver = webdriver.Firefox()
# get geeksforgeeks.org
driver.get("https://www.geeksforgeeks.org/")
# add_cookie method driver
driver.add_cookie({"name" : "foo", "value" : "bar"})
# get browser cookie
driver.get_cookie("foo")
# get all cookies in scope of session
print(driver.get_cookies())
# delete browser cookie
driver.delete_cookie("foo")
# clear all cookies in scope of session
driver.delete_all_cookies()
输出 -
添加名称为 foo 和值 bar 的 Cookie,如下所示 -
终端输出 -
在评论中写代码?请使用 ide.geeksforgeeks.org,生成链接并在此处分享链接。