📅  最后修改于: 2023-12-03 15:08:48.047000             🧑  作者: Mango
在Web自动化测试中,cookie是非常常见的一种操作,Selenium也提供了一些方法来对cookie进行处理。本文将介绍如何使用Selenium处理cookie。
有两种方式来获取Cookie,一种是通过driver.get_cookies()
方法获取所有cookie,另一种是通过driver.get_cookie(name)
方法获取指定name的cookie。
# 获取所有cookie
cookies = driver.get_cookies()
# 获取指定name的cookie
cookie = driver.get_cookie('cookie_name')
添加Cookie可以使用driver.add_cookie(cookie_dict)
方法。注意,cookie_dict必须包含一些必要的信息,如name
、value
、domain
、path
等。以下是添加cookie的示例代码:
# 添加Cookie
cookie = {'name': 'cookie_name', 'value': 'cookie_value', 'domain': 'example.com'}
driver.add_cookie(cookie)
删除Cookie可以使用driver.delete_cookie(name)
方法,其中name
为要删除的cookie的name。如果要删除所有cookie,则可以使用driver.delete_all_cookies()
方法。
# 删除指定name的cookie
driver.delete_cookie('cookie_name')
# 删除所有cookie
driver.delete_all_cookies()
以下是一个完整的示例代码,用来展示如何获取cookie,添加cookie和删除cookie。
from selenium import webdriver
# 创建浏览器对象
driver = webdriver.Chrome()
# 使用get方法打开百度首页
driver.get('https://www.baidu.com')
# 获取所有cookie,并输出
cookies = driver.get_cookies()
print('All cookie:', cookies)
# 添加一个cookie
cookie = {'name': 'test', 'value': '123456'}
driver.add_cookie(cookie)
print('Add cookie:', driver.get_cookie('test'))
# 删除一个cookie
driver.delete_cookie('test')
print('Delete cookie:', driver.get_cookie('test'))
# 关闭浏览器
driver.quit()