selenium库的使用(十一):cookie

使用selenium可以很方便的获取、添加及删除cookie

获取

获取所有cookie

返回一组以字典为元素的列表

1
driver.get_cookies()

获取特定cookie

找到则返回一组字典,否则返回None

1
driver.get_cookie(name)

name :coockie名称

添加

添加cookie

1
driver.add_cookie(cookie_dict)

cookie_dict :传入一组字典

删除

删除所有cookie

1
driver.delete_all_cookies()

删除特定cookie

1
driver.delete_cookie(name)

name :coockie名称

实例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
from selenium import webdriver

driver = webdriver.Chrome()
driver.get('https://www.zhihu.com/explore')

# 获取所有cookie
print(driver.get_cookies())

# 添加一组cookie
driver.add_cookie({'name': 'yuyuan', 'value': '890890'})
# 获取名为 yuyuan 的cookie
print(driver.get_cookie('yuyuan'))

# 删除名为 yuyuan 的cookie
driver.delete_cookie('yuyuan')
# 获取所有cookie
print(driver.get_cookies())

# 删除所有cookie
driver.delete_all_cookies()
# 获取所有cookie
print(driver.get_cookies())

# 退出驱动并关闭浏览器
driver.quit()

输出

1
2
3
4
5
6
7
[{'domain': 'www.zhihu.com', 'httpOnly': False, 'name': 'KLBRSID', 'path': '/', 'secure': False, 'value': 'b33d76655747159914ef8c32323d16fd|1615010614|1615010612'}, {'domain': '.zhihu.com', 'expiry': 1646546613, 'httpOnly': False, 'name': 'Hm_lvt_98beee57fd2ef70ccdd5ca52b9740c49', 'path': '/', 'secure': False, 'value': '1615010613'}, {'domain': '.zhihu.com', 'httpOnly': False, 'name': 'Hm_lpvt_98beee57fd2ef70ccdd5ca52b9740c49', 'path': '/', 'secure': False, 'value': '1615010613'}, {'domain': '.zhihu.com', 'expiry': 1709618613, 'httpOnly': False, 'name': 'd_c0', 'path': '/', 'secure': False, 'value': '"AGCa9D2cwRKPThOZI_eENwiyoopxemDkV8w=|1615010613"'}, {'domain': '.zhihu.com', 'httpOnly': False, 'name': '_xsrf', 'path': '/', 'secure': False, 'value': '0f507ea5-5358-4e9e-af10-c6b0aab36b76'}, {'domain': '.zhihu.com', 'expiry': 1678082612, 'httpOnly': False, 'name': '_zap', 'path': '/', 'secure': False, 'value': 'a71045ed-3ff2-4889-b5d9-21040104d492'}]

{'domain': 'www.zhihu.com', 'httpOnly': False, 'name': 'yuyuan', 'path': '/', 'secure': True, 'value': '890890'}

[{'domain': 'www.zhihu.com', 'httpOnly': False, 'name': 'KLBRSID', 'path': '/', 'secure': False, 'value': 'b33d76655747159914ef8c32323d16fd|1615010614|1615010612'}, {'domain': '.zhihu.com', 'expiry': 1646546613, 'httpOnly': False, 'name': 'Hm_lvt_98beee57fd2ef70ccdd5ca52b9740c49', 'path': '/', 'secure': False, 'value': '1615010613'}, {'domain': '.zhihu.com', 'httpOnly': False, 'name': 'Hm_lpvt_98beee57fd2ef70ccdd5ca52b9740c49', 'path': '/', 'secure': False, 'value': '1615010613'}, {'domain': '.zhihu.com', 'expiry': 1709618613, 'httpOnly': False, 'name': 'd_c0', 'path': '/', 'secure': False, 'value': '"AGCa9D2cwRKPThOZI_eENwiyoopxemDkV8w=|1615010613"'}, {'domain': '.zhihu.com', 'httpOnly': False, 'name': '_xsrf', 'path': '/', 'secure': False, 'value': '0f507ea5-5358-4e9e-af10-c6b0aab36b76'}, {'domain': '.zhihu.com', 'expiry': 1678082612, 'httpOnly': False, 'name': '_zap', 'path': '/', 'secure': False, 'value': 'a71045ed-3ff2-4889-b5d9-21040104d492'}]

[]
  • domain :服务器域名
  • expiry :cookie有效终止日期
  • httpOnly :防脚本攻击
  • name :cookie名称
  • path :获取cookie路径
  • secure :Cookie是否仅被使用安全协议传输
  • value :cookie对应的值