本節(jié)重點(diǎn):
driver.get_cookies() 獲得cookie信息
add_cookie(cookie_dict) 向cookie添加會(huì)話信息
delete_cookie(name) 刪除特定(部分)的cookie
delete_all_cookies() 刪除所有cookie
通過webdriver 操作cookie 是一件非常有意思的事兒,有時(shí)候我們需要了解瀏覽器中是否存在了某個(gè)cookie 信息,webdriver 可以幫助我們讀取、添加,刪除cookie信息。
打印cookie信息
#coding=utf-8
from selenium import webdriver
import time
driver = webdriver.Chrome()
driver.get(http://www.youdao.com)
# 獲得cookie信息
cookie= driver.get_cookies()
#將獲得cookie的信息打印
print cookie
driver.quit()
運(yùn)行打印信息:
[{u'domain': u'.youdao.com', u'secure': False, u'value': u'aGFzbG9nZ2VkPXRydWU=', u'expiry': 1408430390.991375, u'path': u'/', u'name': u'_PREF_ANONYUSER__MYTH'}, {u'domain': u'.youdao.com', u'secure': False, u'value': u'1777851312@218.17.158.115', u'expiry': 2322974390.991376, u'path': u'/', u'name': u'OUTFOX_SEARCH_USER_ID'}, {u'path': u'/', u'domain': u'www.youdao.com', u'name': u'JSESSIONID', u'value': u'abcUX9zdw0minadIhtvcu', u'secure': False}]
對(duì)cookie的操作
上面的方式打印了所有cookie信息表,太多太亂,我們只想有真對(duì)性的打印自己想要的信息,看下面的例子
#coding=utf-8
from selenium import webdriver
import time
driver = webdriver.Firefox()
driver.get(http://www.youdao.com)
#向cookie的name 和value添加會(huì)話信息。
driver.add_cookie({'name':'key-aaaaaaa', 'value':'value-bbbb'})
#遍歷cookies中的name 和value信息打印,當(dāng)然還有上面添加的信息
for cookie in driver.get_cookies():
print "%s -> %s" % (cookie['name'], cookie['value'])
# 下面可以通過兩種方式刪除cookie
# 刪除一個(gè)特定的cookie
driver.delete_cookie("CookieName")
# 刪除所有cookie
driver.delete_all_cookies()
time.sleep(2)
driver.close()