Posted on 

验证码破解——简单静态图形篇

如今不少网站都使用各色各样的验证码来保护自己,不过正所谓”道高一尺魔高一丈“,有验证码,自然也有对验证码的破解。

Tesseract-OCR

Tesseract-OCR 是一款由HP实验室开发,由Google维护的开源OCR(Optical Character Recognition , 光学字符识别)引擎。

安装(以Windows为例)

Github: Tesseract

打开安装程序后,留意安装目录:


记录下这个目录,在完成安装后加入 环境变量。

完成后重启终端,输入 tesseract --version 验证安装:

1
2
3
4
C:\Users\i.DESKTOP-APUTR88>tesseract --version
tesseract 4.00.00alpha
leptonica-1.74.1
libgif 4.1.6(?) : libjpeg 8d (libjpeg-turbo 1.5.0) : libpng 1.6.20 : libtiff 4.0.6 : zlib 1.2.8 : libwebp 0.4.3 : libopenjp2 2.1.0

添加TESSDATA_PREFIX 变量,值为上面的安装目录下的 tessdata 子目录。

接下来安装python模块:

1
pip3 install pytesseract pillow

识别

以下面这张验证码为例:

1
2
3
4
5
6
7
import pytesseract
from PIL import Image


img = Image.open("captcha.jpg")
code = pytesseract.image_to_string(img)
print(code)

ddddocr

ddddocr 相比tesseract 需要更少的前期准备,无需在本地安装其他组件和配置环境变量,即可使用,功能也更全面。

1
pip3 install ddddocr

代码一样很简洁:

1
2
3
4
5
6
7
8
import ddddocr


ocr = ddddocr.DdddOcr()
with open("captcha.jpg", 'rb') as f:
img = f.read()
code = ocr.classification(img)
print(code)

ddddocr 的功能绝不止于此,后面会有详细的介绍,在此只简单展示一下最基础的用法,解决最基础的问题。

开往-友链接力
A member of 开往-友链接力

This site was deployed by @OasisLee using Stellar.

本站由Vercel提供托管与Serverless支持 | PlanetScale提供数据库支持