基于AI模型的验证码安全识别(B站,知乎等)

bilibili 汉字识别顺序验证码

实现基本思路:

   先利用Selenium模拟登录,当然在这之前做好请求伪装,get方法使边框最大化,并且将系统的windows窗口缩放比例设置为100%,不推荐125%,否则可能导致xpath定位不准,使用send_key()方法导入账号密码,隐式等待验证码出现,这里B站可以获取验证码图片的URL,我们可以选择进行下载或者直接利用selenium鼠标头进行截取,之后对图片进行分割处理使之仅保留我们所需的部分,之后建立x-y平面直角坐标系,利用AI模型对其点击顺序及其个数进行识别,得出相应的坐标点,利用ActionChains 依次通过得出的坐标点进行click,定位到确认按钮进行click

这里B站有对应的url可以download,但是对应基于react框架的知乎就没有对应的url

操作实现过程

我们先导入必要的模块库

import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from PIL import Image
from chaojiying import Chaojiying_Client
from selenium.webdriver.common.action_chains import ActionChains
import time

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

from PIL import Image
from chaojiying import Chaojiying_Client
from selenium.webdriver.common.action_chains import ActionChains
import time from selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.wait import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from PIL import Image from chaojiying import Chaojiying_Client from selenium.webdriver.common.action_chains import ActionChains
© 版权声明
THE END
支持一下吧
点赞5 分享
评论 抢沙发
头像
请文明发言!
提交
头像

昵称

取消
昵称表情代码快捷回复

    暂无评论内容