有时候,我们需要验证浏览器中cookie是否正确,因为基于真实cookie的测试是无法通过白盒和集成测试的。WebDriver提供了关于cookie的操作方法,可以读取、添加和删除cookie信息。
WebDriver操作cookie的方法:
*get_cookies(): 获得所有cookie信息。
*get_cookie(name):返回字典的key为“name" 的cookie信息。
*add_cookie(cookie_dict):添加cookie,“cookie_dict”指字典对象,必须有name和value值。
*delete_cookie(name,optionsString):删除cookie信息。name是要删除的cookie名称,optionsString是该cookie的选项,目前支持的选项包括“路径”,“域”。
*delete_all_cookies():删除所有cookie信息。
from selenium import webdriver
import time
driver=webdriver.Chrome()
driver.get("http://www.youdao.com")
'''
#获得cookie信息
cookie=driver.get_cookies()
#将获得cookie的信息打印
print(cookie)
time.sleep(5)
'''
#向cookie的name和value 中添加会话消息
driver.add_cookie({'name':'key-aaaaaaaa','value':'value-bbbbbbb'})
#遍历cookies中的name和value信息并打印,当然还有上面添加的信息
for cookie in driver.get_cookies():
print("%s->%s"% (cookie['name'],cookie['value']))
driver.quit()