selenium2学习:验证码

1.1     验证码

1.1.1      去掉验证码

如果是正式环境,则不安全。

1.1.2      设置万能验证码

   去掉验证码的主要问题是安全,为了应对在线系统的安全威胁,可以在线修改程序时不取消验证码,而是在程序中留一个后门,即设置一个万能验证码。只要用户输入这个验证码,程序就认为验证通过,否则就判断用户输入的验证码是否正确。

from random import randint

 

#生成一个100到999之间的随机数

verify = randint(1000,9999)

 

print("生成的随机数是:%d"%verify)

num = input("请输入随机数:")

print(num)

num = int(num)

if num ==verify:

    print("登录成功!")

elif  num ==132741:

    print("登录成功!")

else:

print("验证码有误!")

1.1.3      验证码识别技术

Python-tesseract识别图片验证码。

1.1.4      记录cookie

通过向浏览器中添加cookie可以绕过登录的验证码。在登录的时候勾选记住密码,当下次访问该网站时就默认处于登录状态了。记住密码功能其实就记录了浏览器的cookie中。通过webdriver来操作浏览器的cookie,可以通过add_cookie()方法将用户名密码写入浏览器cookie,当再次访问时,服务器将直接读取浏览器的cookie进行登录。

from selenium import webdriver

import time

driver = webdriver.Firefox()

driver.get("http://192.168.1.51/oneCard/login")

#将用户名密码写入浏览器cookie

driver.add_cookie({'name':'username','value':'super'})

driver.add_cookie({'name':'password','value':'asd,./123*.'})

#再次访问网站,将会自动登录

driver.get("http://192.168.1.51/oneCard/login")

 
 
原文地址:https://www.cnblogs.com/jxba/p/8993530.html