selenium基础-跳过验证码

一、方法

  • 设置万能验证码或者屏蔽验证码(最常用的方法)
  • 使用验证码识别工具识别验证码
  • 通过selenium操作cookies
  • 直接使用配置文件的webdriver

二、用selenium操作cookie绕过验证码

  cookies和session都是有服务器生成,cookie将保留在浏览器本地,session记录在服务器端

cookie的几大属性

  • name:名字(键),cookies的必须字段
  • values:值
  • domain:域,cookie的作用域名
  • path:表示路径,/表示当前域名下所有的网页都能使用该cookie
  • domain和path结合在一起使用限定了cookie的使用范围
  • expires:生命周期,限定cookie的使用时间。如果生命周期中有session的说明cookie只在当前回话中有效,关闭浏览器后立即失效
  • sessionID:本次访问回话留下的ID

 通过sessionID加载cookie

通过sessionID的键和值来确定cookie

from selenium import webdriver
import time driver=webdriver.Firefox()
driver.get('https://www.baidu.com')
time.sleep(3)
#加载cookie
driver.add_cookie({'name':'BDUSS','value':'NiTDdnM0dLcGYxfkRWVnk1anFUdmRNemsxYWIzNlJDcWJHLU1WNkduOEZ
    nNWhkRVFBQUFBJCQAAAAAAAAAAAEAAAApKJxdtLrM7MDvMTAyNQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAX2cF0F9nBddX'})
driver.refresh()
time.sleep(3)
driver.quit()

selenium基础-跳过验证码的更多相关文章

  1. Selenium基础知识(九)验证码

    关于Selenium处理验证码总结下: 1.去掉验证码(这个为了测试,去掉可能性不大) 2.万能验证码(让开发给做一个万能验证码,可能性也不大) 3.OCR光学识别,python包Python-tes ...

  2. selenium基础-图形验证码

    selenium基础-图形验证码 一.图形验证码作用 设计的初衷其实就是为了防自动化,防止一些人利用自动工具恶意攻击网站 二.图形验证码是由客户端生成还是由服务器端生成的? 图形验证码是由服务器端生成 ...

  3. 【Python爬虫】selenium基础用法

    selenium 基础用法 阅读目录 初识selenium 基本使用 查找元素 元素互交操作 执行JavaScript 获取元素信息 等待 前进后退 Cookies 选项卡管理 异常处理 初识sele ...

  4. 通过cookies跳过验证码登陆页面,直接访问网站的其它URL

    我每次手动访问去NN网的一家酒店,就不需要登陆,一旦我用脚本打开就会让我登陆,而登陆页面又有验证码,不想识别验证码,所以就想:“通过cookies跳过验证码登陆页面,直接访问网站的其它URL”   转 ...

  5. requests库使用:通过cookie跳过验证码登录,并用Session跨请求保持cookie

    拿我平时测试的一个系统为例,从UI层面来说必须先登录才可以进行后续操作,但是我在测试接口文档提供的接口时,发现并不需要登录,每个接口只要传参就可以正常返回.原因是我们这边专门弄了一个接口包来统一管理常 ...

  6. Selenium | 基础入门 | 截屏并保存于本地

    可先参考   Selenium | 基础入门 | 利用Xpath寻找用户框 核心代码: //截屏操作 File srcFile = ((TakesScreenshot)driver).getScree ...

  7. web 自动化测试 selenium基础到应用(目录)

    第一章   自动化测试前提及整体介绍 1-1功能测试和自动化测试的区别 1-2自动化测试流程有哪些 1-3自动化测试用例和手工用例的区别 1-4 自动化测试用例编写 1-5 selenium的优势以及 ...

  8. selenium基础(下拉菜单操作)

    selenium基础(下拉菜单操作) 非select/option元素: 1.触发下拉列表出现 2.等待下拉列表中的元素出现,然后进行选择元素即可. select/option元素: 下拉框操作-Se ...

  9. selenium基础(脚本模块化)

    selenium基础(脚本模块化)

随机推荐

  1. springBoot使用PageHelper当超过最大页数后仍然返回数据

    在SpringBoot中使用PageHelper分页插件时,如果设置pagehelper.reasonable=true时,pageNum<=0 时会查询第一页, pageNum>page ...

  2. eclipse的快捷键(常用)

    ctrl+shift+r 全局查找java类 ctrl +h       全局查找包含某某内容的文件位置 ctrl +alt+h  右击方法名 选择open call hierarchy

  3. *&m与m的区别

    int *a;int * &p=a; 把 int * 看成一个类型,a就是一个整型指针,p 是a的别名 #include<iostream> using namespace std ...

  4. Aggregate report 聚合报告

  5. 函数中的toString

    function Person(){ this.name = name; this.age = age; this . gender = gender;  } //  创建一个Person实例 var ...

  6. 基于nginx结合openssl实现https

    [root@localhost ~]#systemctl stop firewalld[root@localhost ~]#setenforce 0[root@localhost ~]#iptable ...

  7. 修改Ubuntu16.04默认主题标题栏的颜色

    默认主题为Ambiance: sudo gedit /usr/share/themes/Ambiance/gtk-3.0/gtk-main.css 将: @define-color dark_bg_c ...

  8. HttpUrlConnection类基本使用

    这个类用来模拟浏览器向服务器发送请求和接收响应 注意: HttpUrlConnection对象简称huc对象 1)获取huc对象向url构造中传递url字符串,并调用openconnection方法即 ...

  9. leetcode-132-分割回文串②*

    题目描述: 方法一:动态规划 class Solution: def minCut(self, s: str) -> int: min_s = list(range(len(s))) n = l ...

  10. centos做免密登录

    CentOS 6.9 SSH配置用户免密码登录 1. 演示环境: 192.168.1.144:CentOS 6.9 x86_64 192.168.1.146:CentOS 7.4 x86_64 2.  ...