Selenium2+python自動(dòng)化41-繞過(guò)驗(yàn)證碼(add_cookie)
前言
驗(yàn)證碼這種問(wèn)題是比較頭疼的,對(duì)于驗(yàn)證碼的處理川梅,不要去想破解方法,這個(gè)驗(yàn)證碼本來(lái)就是為了防止別人自動(dòng)化登錄的佑吝。如果你能破解唱歧,說(shuō)明你們公司的驗(yàn)證碼嗎安全級(jí)別不高岖免,那就需要提高級(jí)別了找颓。
對(duì)于驗(yàn)證碼合愈,要么是讓開發(fā)在測(cè)試環(huán)境弄個(gè)萬(wàn)能的驗(yàn)證碼,如:1234击狮,要么就是盡量繞過(guò)去佛析,如本篇介紹的添加cookie的方法。
一彪蓬、python抓包c(diǎn)ookie
1.先以簡(jiǎn)書為例寸莫,打開簡(jiǎn)書首頁(yè),抓登錄前和登錄后的cookie档冬,上代碼膘茎,獲取cookie的方法driver.get_cookies()。
from seleniumimport webdriver
driver = webdriver.Chrome()
driver.get("http://www.reibang.com/sign_in")
driver.find_element_by_xpath('//*[@id="session_email_or_mobile_number"]').send_keys(***********)
driver.find_element_by_xpath('//*[@id="session_password"]').send_keys("**********")
# 登錄前cookies
cookie = driver.get_cookies()
print(cookie)
driver.find_element_by_xpath('//*[@id="sign-in-form-submit-btn"]').click()
input()
# 登錄后cookies
cookie = driver.get_cookies()
print(cookie)
2.抓到登錄后的cookie酷誓,整理后如下披坏,一共11條cookie
3.把11條cookie添加到瀏覽器,使用方法driver.add_cookie()呛牲,上代碼刮萌。
from seleniumimport webdriver
driver = webdriver.Chrome()
driver.get("http://www.reibang.com/")
c1 = {'domain':'.jianshu.com', 'expiry':7915759521, 'httpOnly':False, 'name':'sensorsdata2015jssdkcross',
? ? ? 'path':'/', 'secure':False,
? ? ? 'value':'%7B%22distinct_id%6%893d9175-078929c98a3b3d-c791e37-921600-176859e43db119%22%7D'}
c2 = {'domain':'.jianshu.com', 'expiry':1611237921, 'httpOnly':True, 'name':'web_login_version', 'path':'/',
? ? ? 'secure':False, 'value':'MTYwODU1OTUxNg%3D%3D--5217f7f16874f3f72a438'}
c3 = {'domain':'.jianshu.com', 'expiry':1608566399, 'httpOnly':False, 'name':'sajssdk_2015_cross_new_user',
? ? ? 'path':'/', 'secure':False, 'value':'1'}
c4 = {'domain':'www.reibang.com', 'expiry':1640095521, 'httpOnly':False, 'name':'__yadk_uid', 'path':'/',
? ? ? 'secure':False, 'value':'BNWU9XiTMyfS2bVPoswPyozmAFAkxYk2'}
c5 = {'domain':'.jianshu.com', 'httpOnly':False, 'name':'Hm_lpvt_0c0e9d9b1e7d617b3e6842e85b9fb068', 'path':'/',
? ? ? 'secure':False, 'value':'1608559522'}
c6 = {'domain':'.jianshu.com', 'expiry':1608581122, 'httpOnly':True, 'name':'_m7e_session_core', 'path':'/',
? ? ? 'secure':True, 'value':'e298a9ced483ae922ce2152df7777426'}
c7 = {'domain':'.jianshu.com', 'expiry':1611237921, 'httpOnly':True, 'name':'remember_user_token', 'path':'/',
? ? ? 'secure':True,
? ? ? 'value':'W1syMzMxMDgxN10sIiQyYSQxMSRJQmZ4Ynhjbkl0%3D--f15a069f6092e4fe8e6d9674bf85b809ecab257b'}
c8 = {'domain':'.jianshu.com', 'expiry':1640095521, 'httpOnly':False,
? ? ? 'name':'Hm_lvt_0c0e9d9b1e7d617b3e6842e85b9fb068', 'path':'/', 'secure':False, 'value':'1608559510'}
c9 = {'domain':'www.reibang.com', 'httpOnly':False, 'name':'default_font', 'path':'/', 'secure':False,
? ? ? 'value':'font2'}
c10 = {'domain':'www.reibang.com', 'httpOnly':False, 'name':'locale', 'path':'/', 'secure':False, 'value':'zh-CN'}
c11 = {'domain':'www.reibang.com', 'httpOnly':False, 'name':'read_mode', 'path':'/', 'secure':False,
? ? ? 'value':'day'}
driver.add_cookie(c1)# 添加11個(gè)值
driver.add_cookie(c2)
driver.add_cookie(c3)
driver.add_cookie(c4)
driver.add_cookie(c5)
driver.add_cookie(c6)
driver.add_cookie(c7)
driver.add_cookie(c8)
driver.add_cookie(c9)
driver.add_cookie(c10)
driver.add_cookie(c11)
driver.refresh()
**************添加cookie前***************
**************添加cookie后***************
大功告成驮配!隨便方法笨娘扩,但是簡(jiǎn)單實(shí)用!
參考原文 https://www.cnblogs.com/yoyoketang/p/6536253.html