You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用PHP获取并识别验证码图片中的数字

PHP 实现 ozsub 登录页验证码获取与数字识别方案

你要识别的验证码示例如下:
验证码示例
该验证码为4位纯数字、无复杂干扰线,识别难度低,完整实现方案如下:

一、使用 CURL 绑定会话获取验证码图片

注意:验证码与用户登录会话绑定,必须同一会话下获取的验证码才有效,需要全程复用Cookie

实现代码:

<?php
// 临时存储Cookie的文件,确保同一会话
$cookiePath = tempnam(sys_get_temp_dir(), 'ozsub_');
$loginPageUrl = 'http://control.ozsub.com/Account/Login.aspx';
// 验证码接口地址可通过浏览器F12抓包确认,通常为类似下方的地址
$captchaUrl = 'http://control.ozsub.com/Account/ValidateCode.aspx';

// 第一步:请求登录页,初始化会话Cookie
$ch = curl_init($loginPageUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiePath);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiePath);
curl_exec($ch);
curl_close($ch);

// 第二步:请求验证码图片并保存到本地
$ch = curl_init($captchaUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookiePath);
curl_setopt($ch, CURLOPT_COOKIEFILE, $cookiePath);
$imgContent = curl_exec($ch);
curl_close($ch);
file_put_contents('./captcha.png', $imgContent);
?>

二、验证码数字识别

推荐两种可选方案,根据你的部署环境选择:

方案1:Tesseract OCR 通用识别

适合不想做定制开发的场景,步骤如下:

  1. 服务器安装 Tesseract OCR 引擎
  2. 安装PHP依赖包:composer require thiagoalessio/tesseract_ocr
  3. 实现识别代码:
<?php
require 'vendor/autoload.php';
use thiagoalessio\TesseractOCR\TesseractOCR;

// 预处理图片,提升识别准确率
$img = imagecreatefrompng('./captcha.png');
// 转灰度
imagefilter($img, IMG_FILTER_GRAYSCALE);
// 调整亮度对比度,突出数字
imagefilter($img, IMG_FILTER_BRIGHTNESS, 30);
imagefilter($img, IMG_FILTER_CONTRAST, -40);
imagepng($img, './captcha_clean.png');
imagedestroy($img);

// 限制只识别数字,输出结果
$code = (new TesseractOCR('./captcha_clean.png'))
    ->allowDigits()
    ->run();
$code = trim($code);
echo "识别结果:{$code}";
?>

方案2:模板匹配识别

适合需要100%准确率的场景,该验证码字体固定,实现步骤:

  • 提前收集0-9所有数字的截图,作为匹配模板
  • 将获取到的验证码按固定位置切割为4个单字图片
  • 每个单字和10个模板做像素相似度对比,匹配度最高的即为对应数字
  • 该方案无需额外安装扩展,识别速度快,准确率可达100%

三、后续操作说明

  • 提交登录请求时必须复用之前生成的Cookie文件,否则识别后的验证码无法通过校验
  • 如果识别准确率不足,可调整图片预处理的亮度、对比度参数,或者裁剪掉验证码图片的多余边框
  • 请勿将该方案用于非法用途,遵守目标站点的用户协议

内容的提问来源于stack exchange,提问作者Aria Nuck

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 00:36:01