1、對於一些網站現在需要輸入驗證碼才能登錄,小編這里介紹怎么通過cookie來跳過驗證碼的登錄:
例如:登錄百度的賬號,第三行有一列驗證碼的登錄界面如圖:
2、這時候我們需要通過獲取cookie,來跳過此步驟,這樣測試在測試的過程中就不會要求登錄的功能了;
3、怎么樣獲取cookie信息:
1.安裝抓包工具fiddler
2.設置fiddler,允許HTTPS訪問(具體怎么設置,大家可以自己百度一下,這里就不在具體介紹了,小編這里只插入幾個圖片,大家看圖片的步驟走就好了)
4.設置完成后,點擊瀏覽器,打開百度,然后點擊登錄,輸入用戶名密碼,輸入驗證碼,這時候打開fidler,然后在切回瀏覽器,點擊百度的登錄賬號;
5.查看fiddler的抓包界面:
點擊點擊inspector界面,選擇cookie界面,查看百度ID,和BDUSS(具體到工作中哪些可以獲取驗證的字段,哪些是ID的字段,要和具體的開發人員確認的)
6.接下來我們要吧cookie信息加載到對應的代碼里面:
1 from selenium import webdriver 2 from time import sleep 3 4 driver=webdriver.Chrome() 5 driver.get("http://www.baidu.com") 6 #把fiddler獲取的cookie信息加載進來;通過Python字典的形式; 7 8 driver.add_cookie({'name':'BAIDUID','value':'E6913D85A9257BBA709CA699F5F3B846:SL=0:NR=10:FG=1'}) 9 10 driver.add_cookie({'name':'BDUSS','value':'80ZS1GYTB6OTlsLWlLc3BCeGVmUGdWMjdFMzZ0Ynk5eXk2b2hBU3FmaFhPRHRhQVFBQUFBJCQAAAAAAAAAAAEAAABcoBxVxbawobChNHl2NwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFerE1pXqxNaNk'}) 11 sleep(3) 12 #刷新頁面 13 driver.refresh() 14 sleep(3)