文章目录

  • 前言
  • 环境模块
  • 代码展示
  • 分别实现一下验证码
  • 实现效果
  • 完整代码
  • 视频教程


前言

嗨嗨,大家好 ~ 我是小圆 ~

不知道你们在采集数据的时候,有没有过因为过快或者访问频繁,一访问就弹出验证码,然后就蚌珠了~

python 验证码 扭曲 python验证码校验_pycharm

咳咳,也没这么严重哈。
那今天就给大家分享一个简单处理验证码的方法

!!文章结尾还有视频讲解哦 !!

环境模块

这里需要用到一个 ddddocr 模块 ,这是别人开源写好的一个东西,简单又好用,但是精确度差一点点,但是还是非常好用的。

如果你追求精确度的话,可以调用别人写好的一些API 。

咱们直接 win+r 弹出搜索框后输入 cmd ,点击确定弹出命令提示符窗口, 输入pip install ddddocr 即可安装。

不会的话可以直接来这里 https://jq.qq.com/?_wv=1027&k=7Vp8wLlH 这里还有其他学习资料与免费课程

代码展示

代码不多,非常简单。

模块安装好之后咱们先导入一下

import ddddocr

然后实例化一下,用一个 cor 接收一下这个数据。

ocr = ddddocr.DdddOcr()

在这里准备了四个验证码

python 验证码 扭曲 python验证码校验_python_02


python 验证码 扭曲 python验证码校验_开发语言_03

python 验证码 扭曲 python验证码校验_pycharm_04

python 验证码 扭曲 python验证码校验_验证码_05

分别实现一下验证码

首先我们用 with open 来读取一下这文件,读取方式使用 rb ,因为是图片的话就读取它的二进制数据

with open('img_3.png', 'rb') as f:

使用 f.read() 将数据读取出来,再自定义一个变量接收一下。

img_bytes = f.read()

然后我们通过 classification 将它传进去,把结果打印出来就可以了。

result = ocr.classification(img_bytes)
print(result)

python 验证码 扭曲 python验证码校验_验证码_06

实现效果

纯数字的

python 验证码 扭曲 python验证码校验_python 验证码 扭曲_07

字母+数字的

python 验证码 扭曲 python验证码校验_python_08


python 验证码 扭曲 python验证码校验_python 验证码 扭曲_09


可以看到都完整的识别出来了,即使上面有一些花里胡哨的横线啥的。

完整代码

import ddddocr

ocr = ddddocr.DdddOcr()

with open('img_3.png', 'rb') as f:
    img_bytes = f.read()

result = ocr.classification(img_bytes)
print(result)

视频教程


【Python爬虫】实现验证码识别,教你两分钟搞定


大家可以自己去试试,也可以直接应用在采集数据实践当中~

创作不易,大家帮忙点个收藏吧~

python 验证码 扭曲 python验证码校验_验证码_10