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信息。
下面通过get_cookies()来获取当前浏览器的cookie信息。
from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.youdao.com") # 获取cookie信息 cookie = driver.get_cookies() print(cookie) driver.quit()
执行结果:
[{‘domain‘: ‘www.youdao.com‘, ‘httpOnly‘: False, ‘name‘: ‘___rl__test__cookies‘, ‘path‘: ‘/‘, ‘secure‘: False, ‘value‘: ‘1526219954928‘}, {‘domain‘: ‘.youdao.com‘, ‘expiry‘: 1589291954, ‘httpOnly‘: False, ‘name‘: ‘OUTFOX_SEARCH_USER_ID_NCOO‘, ‘path‘: ‘/‘, ‘secure‘: False, ‘value‘: ‘900350754.7866102‘}] |
从执行结果可以看出,cookie数据是以字典的形式进行存放的。
添加cookie操作:
from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.youdao.com") # 向cookie中添加新的信息 driver.add_cookie({‘name‘:‘key-aaaaa‘, ‘value‘:‘value-bbbbb‘}) # 遍历cookie信息 for cookie in driver.get_cookies(): print("%s -> %s" % (cookie[‘name‘], cookie[‘value‘])) driver.quit()
执行结果:
OUTFOX_SEARCH_USER_ID -> [email protected] DICT_UGC -> be3af0da19b5c5e6aa4e17bd8d90b28a| JSESSIONID -> abcl3HQpWO42I51w90znw ___rl__test__cookies -> 1526220445878 key-aaaaa -> value-bbbbb OUTFOX_SEARCH_USER_ID_NCOO -> 828629148.5563225 |
文章摘自:http://www.testclass.net/selenium_python/cookie/
原文地址:https://www.cnblogs.com/studyddup0212/p/9033653.html
时间: 2024-08-28 17:26:38