一般做ui自动化面对验证码一直是一个问题,在网上页百度了一些关于验证码的问题,有通过把验证码提取下来通过pytesser,tesseract,OCR 等库处理,但是这些比较麻烦。
还是因为本人比较渣看不懂,后来想到了webapi学过cookie,然后百度查了一下,果真有这个方法 add_cookie,然后试验了一下,失败了,但是通过问老师后来解决了问题所在,所以现在把这个方法贡献出来,直接上代码,大神请忽视。
本次试验用的是教管系统,当然大家也可以用vip管理系统来进行测试。
注意:driver.get的url是自己手动登录之后的url,然后手动登录后的教管平台不要退出,因为每次退出add_cookie里面的value的cookie就不是最新的了,因为教管系统每次登录后都会生成一个新的sessionid
图1 因为使用driver.refresh()方法,相当于将cookie添加了,然后刷新了之后又从定向到了首页,所以刚开始我试验失败了,所以你再次发送一个get请求,然后就可以进去了。
当然你也可以不用像我一样通过手动的方法去获取cookie,你也可以通过之前学过的webapi的知识自动去获取cookie然后当作参数传进去。
ps:cookie有两种,一种是会话级别的,一种是有有效期的,会话级别的cookie就不能用add_cookie的方法了,因为一次会话过程(从打开浏览器到关闭浏览器,断开连接)结束后它就失效了。