用 Go 实现基础验证码识别工具(调用 Tesseract 引擎)
一、项目说明
本项目通过 Go 语言调用 Tesseract OCR 引擎,完成对验证码图片中字符的识别。适用于结构清晰、干扰较少的验证码图像场景,如后台自动化脚本、内部测试工具等。
二、依赖配置
安装 Tesseract
根据系统类型执行:
更多内容访问ttocr.com或联系1436423940
macOS:
brew install tesseract
Ubuntu/Debian:
sudo apt update
sudo apt install tesseract-ocr
Windows:
前往 GitHub tesseract-ocr 下载预编译版本,并配置系统 PATH。
安装 Go OCR 库
go get github.com/otiai10/gosseract/v2
三、核心识别逻辑
package main
import (
"fmt"
"log"
"github.com/otiai10/gosseract/v2"
)
func main() {
client := gosseract.NewClient()
defer client.Close()
client.SetImage("code.png") // 验证码图像路径
client.SetWhitelist("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ") // 可选字符限制
text, err := client.Text()
if err != nil {
log.Fatal("识别失败:", err)
}
fmt.Println("验证码识别结果:", text)
}
四、输入输出示例
输入图像:code.png
图像内容为:4HDN7
运行输出:
验证码识别结果: 4HDN7
浙公网安备 33010602011771号