python+selenium操作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
from time import sleep
driver = webdriver.Firefox() # 指定和打开浏览器
url1='http://www.baidu.com'
print('==============================================================================1')
driver.delete_all_cookies() #先删除所有cookie
print(driver.get_cookies()) #打印所有cookie
print('==============================================================================2')
driver.get(url1) #打开第一个网址 #也可以写成:driver.get('http://www.baidu.com')
sleep(5)
print(driver.get_cookies()) #打印获取到的所有cookie
print('==============================================================================3')
driver.add_cookie({'name':'kw','value':'selenium'}) #添加一个name为kw,内容为selenium的cookie
print(driver.get_cookie('kw')) #获取名为kw的cookie
print(driver.get_cookie('PSTM'))
print('==============================================================================4')
print(driver.get_cookies()) #打印获取到的所有cookie
print('==============================================================================5')
driver.delete_cookie('kw') #删除名为kw的cookie
print(driver.get_cookies()) #打印获取到的所有cookie
print('==============================================================================6')
driver.delete_all_cookies() #删除所有cookie
print(driver.get_cookies()) #打印获取到的所有cookie
print('==============================================================================7')
print(driver.session_id)
driver.quit() #关闭浏览器 或者:driver.close()
=============================================================================================================================================
执行结果:
==============================================================================1
[]
==============================================================================2
[{'name': 'BIDUPSID', 'value': 'B43212B5757F6F037FD9962640E86FE1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'BAIDUID', 'value': 'B43212B5757F6F03711CE8013BBCD9D7:FG=1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1607618442}, {'name': 'BD_LAST_QID', 'value': '9241172374197597317', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576082443}, {'name': 'delPer', 'value': '0', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_HOME', 'value': '0', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'H_PS_PSSID', 'value': '1456_21107_30210_30086', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_UPN', 'value': '13314552', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576946444}, {'name': 'BDORZ', 'value': 'B490B5EBF6F3CD402E515D22BCDA1598', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576168844}]
==============================================================================3
{'name': 'kw', 'value': 'selenium', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}
{'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}
==============================================================================4
[{'name': 'BIDUPSID', 'value': 'B43212B5757F6F037FD9962640E86FE1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'BAIDUID', 'value': 'B43212B5757F6F03711CE8013BBCD9D7:FG=1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1607618442}, {'name': 'BD_LAST_QID', 'value': '9241172374197597317', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576082443}, {'name': 'delPer', 'value': '0', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_HOME', 'value': '0', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'H_PS_PSSID', 'value': '1456_21107_30210_30086', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_UPN', 'value': '13314552', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576946444}, {'name': 'BDORZ', 'value': 'B490B5EBF6F3CD402E515D22BCDA1598', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576168844}, {'name': 'kw', 'value': 'selenium', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}]
==============================================================================5
[{'name': 'BIDUPSID', 'value': 'B43212B5757F6F037FD9962640E86FE1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'PSTM', 'value': '1576082440', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 3723566089}, {'name': 'BAIDUID', 'value': 'B43212B5757F6F03711CE8013BBCD9D7:FG=1', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1607618442}, {'name': 'BD_LAST_QID', 'value': '9241172374197597317', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576082443}, {'name': 'delPer', 'value': '0', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_HOME', 'value': '0', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'H_PS_PSSID', 'value': '1456_21107_30210_30086', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False}, {'name': 'BD_UPN', 'value': '13314552', 'path': '/', 'domain': 'www.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576946444}, {'name': 'BDORZ', 'value': 'B490B5EBF6F3CD402E515D22BCDA1598', 'path': '/', 'domain': '.baidu.com', 'secure': False, 'httpOnly': False, 'expiry': 1576168844}]
==============================================================================6
[]
==============================================================================7
9b459781-fba6-4bd9-8cbf-43650b92f0cb