Python+Selenium 通过添加cookies或token解决网页上验证码登录问题

cookie或token可以保存登录信息,当我们拿到cookie后,可以通过向浏览器发送cookie中记录的数据,直接变成登录状态,不需要再登录。

下面举个栗子

1、先把正常的登录方式码一下:
browser =  webdriver.Chrome(executable_path='chromedriver.exe')
browser.get("https://******")
#登录
browser.find_element_by_id("username").send_keys("***")
browser.find_element_by_id("password").send_keys("***")
browser.find_element_by_id("logInBtn").click()

这是没有验证码的登录,如果有验证码,需要加一句获取和输入验证码,我本意是要告诉你如何获取cookie,这里有没有验证码无所谓。

2、下面是获取cookie

#获取cookie
cookies=browser.get_cookies()
print(cookies)

打印出来的就是cookie的内容,你也可以直接从浏览器里面登录后获取cookie。

3、拿到cookie后接下来就可以向浏览器发送cookie了

#添加cookie
#browser.add_cookie({'name': '...', 'value': '...'})
c1={'domain': '.qunadai.com', 'expiry': 1548387538, 'httpOnly': False, 'name': 'UM_distinctid', 'path': '/', 'secure': False, 'value': '164d9d16fa6299-0b0c0d8568386d-2d604637-3d10d-164d9d16fa7a72'}
c2={'domain': ' wap-sit.qunadai.com', 'expiry': 1548387549, 'httpOnly': False, 'name': 'CNZZDATA1271582478', 'path': '/', 'secure': False, 'value': '941553296-1532663028-%7C1532663028'}
browser.add_cookie(c1)
browser.add_cookie(c2)

添加cookie使用方法browser.add_cookie(),注意cookie格式是key-value的格式。

4、token登录

有的网页不用cookies,有自己的token,没关系,继续试试token

#获取token
token=browser.execute_script('window.localStorage.getItem("token")')
print(token)
#添加token
js='window.localStorage.setItem("token","token值")' 
browser.execute_script(js)
browser.refresh()#刷新

 最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走! 希望能帮助到你!【100%无套路免费领取】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值