前戏
在做自动化的时候,遇到难处理的验证码,我们可以手动登录,然后获取登录到的cookie,添加到浏览器中,就可以实现登录
实战
from selenium import webdriver driver = webdriver.Chrome() driver.get('http://www.imooc.com') cookie = driver.get_cookies() # 得到 cookie print(cookie) # 打印出的是一个列表,列表里是字典 print(cookie[0]) # 打印出列表的第 1 个 driver.add_cookie({'name': 'zouzou', 'value': '123'}) # 往 cookie 里添加一个字典,添加到最后一个 for cookie in driver.get_cookies(): print("%s ----- %s" % (cookie['name'], cookie['value'])) # 循环打印出 name 和 value driver.quit()
使用cookie绕过登录
from selenium import webdriver from time import sleep driver = webdriver.Chrome() driver.get('http://www.baidu.com') driver.add_cookie({'name': 'BAIDUID', 'value': 'ASKMLJIH'}) driver.add_cookie({'name': 'BDUSS', 'value': 'UHUIHIU'}) sleep(3) driver.refresh()
cookie 操作的几种方法
1.get_cookies():获取所有 cookies
2.driver.get_cookie(name):获取指定 name 的 cookie:
3.清除指定 cookie:delete_cookie()
4.delete_all_cookies():清除所有 cookies
5.add_cookie(cookie_dict):添加 cookie 的值