51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 454|回复: 0
打印 上一主题 下一主题

如何通过cookie跳过登录验证码实现登录---selenium?

[复制链接]
  • TA的每日心情
    无聊
    5 天前
  • 签到天数: 941 天

    连续签到: 3 天

    [LV.10]测试总司令

    跳转到指定楼层
    1#
    发表于 2023-2-14 10:21:18 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    摘要:一般做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的方法了,因为一次会话过程(从打开浏览器到关闭浏览器,断开连接)结束后它就失效了。

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-5-5 21:20 , Processed in 0.065544 second(s), 23 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表