zoukankan      html  css  js  c++  java
  • Selenium—通过cookies跳过验证码登录

    通过cookies跳过验证码登录

      现在很多的登录都需要验证,而验证相对复杂,需要花费大量的时间,那么我们就可以通过cookie,来跳过登录

    cookie怎么获取

      我们可以通过手动登录,来获取登录时的cookie值

      • 通过Fiddler抓包获取cookie值

      • 通过开发者工具--Network 中获取cookie值

      • https://www.gglott.com.cn/WXDefault.aspx?home=1 登录为例

    添加cookie

    • driver.add_cookie()

    思路:

    1. 手动登录获取到 cookie 信息
    2. selenium 打开的 url 为登录后的 url
    3. 增加 cookie 操作
    4. 刷新页面

    代码如下:

    from selenium import webdriver
    import time
    
    url = 'https://www.gglott.com.cn/WXDefault.aspx?home=1'
    driver = webdriver.Chrome()
    driver.get(url)
    
    # 添加Cookie
    # 将 fiddler 中抓到的 cookie 放到对应值中
    driver.add_cookie({'name': 'UM_distinctid', 'value': '16b40aa1fd-453beb6d816-100200-40aa402418c'})
    driver.add_cookie({'name': 'CNZZDATA1264318323', 'value': '10965-1571-%7C1038'})
    driver.add_cookie({'name': 'ASP.NET_SessionId', 'value': 'w0jpzfiycjnm'})
    
    # 刷新页面
    driver.refresh()
    
    driver.implicitly_wait(3)
    
    # 如果不加cookie 执行该步操作,则会提示登录
    # 点击胜平负200
    driver.find_element_by_xpath('//ul[@id="iconsBox"]//a[@href="/WXDefault.aspx?dc=200"]').click()
    
    time.sleep(5)
    driver.quit()
  • 相关阅读:
    偶感
    数据库脚本开发中应注意的事项
    事务与隔离级别笔记
    Spring MVC学习笔记
    Eclipse环境配置与快捷命令
    告别2016,展望2017
    待总结项
    常见问题汇总
    我的工具箱
    精品文章收藏
  • 原文地址:https://www.cnblogs.com/wilson-5133/p/10997934.html
Copyright © 2011-2022 走看看