验证码识别接口、多种样式验证码识别接口、中英文验证码识别接口

验证码识别接口、多种样式验证码识别接口、中英文验证码识别接口

  • 本文提供一个基于OCR和机器学习的验证码识别接口,能够识别较复杂的中文、英文验证码,在OCR的基础上针对验证码进行算法优化。
  • 本接口是收费的(最低0.5分1次调用,试用请添加WX:xujian_cq
  • 请求必要的code可以通过搜索小程序“数字续坚”,在首页签到后取得
  • 接口内容不包含敏感信息,如有侵权,请联系作者删除。

0 先看效果

  • 验证码原图(被csdn的水印挡住了,仔细看还是能看到p3gb)
    在这里插入图片描述
  • 接口识别结果:
{"code":200,"msg":"succeed.","data":"p3gb"}

1 接口功能

  • 本文提供一个基于OCR和机器学习的验证码识别接口,能够识别较复杂的中文、英文验证码,在OCR的基础上针对验证码进行算法优化。

2 接口用法

2.1 重要参数

  • 入参
序号项目说明
1接口地址https://www.xujian.tech/atlapi/ocr/yzm/{code}
2请求方式POST
3请求参数1code用来识别用的code,在WX小程序“数字续坚”首页签到取得,不会变化
4请求参数2imgBase64
5请求参数3type验证码类型,不同类型识别的验证码不同,价格也不同,见下表
  • 验证码类型和价格(即type字段解释)
  • 类型该如何选择?见文末示例
序号名称价格(分)
1通用数英(≤5位)00.5
2通用数英plus(≤5位)12
3通用数英plus(≤6位)22.5
4通用数英5-8位30.8
5通用数英9~11位41
6通用数字计算题52
6通用中文计算题62.5

- 重要说明:code不可变更,请注意保密

  • 出参标准格式
序号项目说明
1返回值格式JSONObject含code、data、msg
2返回值1code200为成功,其他表示失败
3返回值2msg成功(succeed.)、失败的文字描述
4返回值3data识别到的验证码

2.2 返回值

  • 返回一个JSON对象
序号参数名类型说明
1dataString识别到的验证码

2.3 请求示例

# 下方地址中的code请到数字续坚小程序首页签到获取,不会变化,注意保密
post https://www.xujian.tech/atlapi/ocr/yzm/${YourCodeForm数字续坚小程序}
  • Java Demo:
		//下方代码主要依赖了hutool工具,maven如下
//        <dependency>
//            <groupId>cn.hutool</groupId>
//            <artifactId>hutool-all</artifactId>
//            <version>5.8.20</version>
//        </dependency>
		
        String code = "YourCodeForm数字续坚小程序";
		//把图片文件转为base64表示
        String base64Str = Base64.encode(new File("C:\\Users\\Administrator\\Desktop\\temp\\20240510091754.png"));

        Map<String,Object> codeParams = new HashMap<>();
        codeParams.put("imgBase64",base64Str);
        codeParams.put("type", "0");

        //本地测试
        String yzmData = HttpRequest
                .post("https://www.xujian.tech/atlapi/ocr/yzm/" + code)
                .contentType("application/x-www-form-urlencoded")
                .form(codeParams)
                .execute()
                .body();

        System.out.println(yzmData);

2.4 返回示例

{"code":200,"msg":"succeed.","data":"p3gb"}

3 收费方式

  • 按次收费,见2.1验证码类型和价格
  • 试用请添加WX:xujian_cq

4 消费查询

  • 打开网站,登录后在“API服务-验证码识别”中可查看调用情况
  • 也可以在上方网站发现更多有趣的事情
// 地址
https://www.xujian.tech/monitor

5 验证码类型说明和示意

5.1 通用数英(≤5位)

  • 数字或英文组合的1~4位验证码。
    在这里插入图片描述

5.2 通用数英plus(≤5位)

  • 其他类型准确率不满足可使用本类型,不超过5位。
    在这里插入图片描述

5.3 通用数英plus(≤6位)

  • 数英1~6位plus,不超过6位包含6位。
    在这里插入图片描述

5.4 通用数英5-8位

  • 数字或英问组合的5~8位验证码。
    在这里插入图片描述

5.5 通用数英9~11位

  • 通用数英9~11位。

5.6 通用数字计算题

  • 通用数字计算题。
    在这里插入图片描述

5.7 通用中文计算题

  • 通用中文计算题。
    在这里插入图片描述

5.8 其他复杂定制类型

  • 联系我讨论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/697603.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

单片机(STM32)与上位机传输浮点数

目录 单片机(STM32)与上位机传输数据的方法1. 传输整形数据2. 传输浮点数据3. 如何打包与解包 单片机(STM32)与上位机传输数据的方法 在进行单片机程序的开发时&#xff0c;常常需要与其他设备进行通信。一种情况是与其他电路板通信&#xff0c;比如STM32主机与STM32从机通信&…

CentOS7 MySQL5.7.35主从 不停机搭建 以及配置

如需安装MySQL&#xff0c;参照MySQL 5.7.35 安装教程 https://blog.csdn.net/CsethCRM/article/details/119418841一、主&从 环境信息准备 1.1.查看硬盘信息&#xff0c;确保磁盘够用&#xff08;主&从&#xff09; df -h1.2.查看内存信息 &#xff08;主&从&am…

基尼系数计算过程

引言 在探讨经济公平性时&#xff0c;基尼系数是一个不可忽视的指标。它不仅反映了一个国家或地区内部的收入分配状况&#xff0c;还对政策制定和社会稳定有着深远的影响。 基尼系数的定义 基尼系数是由意大利统计学家科拉多基尼在1912年提出的&#xff0c;用来衡量一个国家…

【T3】畅捷通T3软件查询明细账等账簿,出现某些列串位置。

【问题描述】 查询畅捷通T3软件科目明细账的时候&#xff0c; 出现某些行的数据串位置&#xff0c; 摘要、金额、方向都没有在对应的列。 【解决方案】 根据跟踪发现&#xff0c;最终在客户档案上发现问题。 数据串位中对应的客户名称、简称中的对后面多了一个【tab】键的空格…

Nodejs 第七十七章(MQ高级)

MQ介绍和基本使用在75章介绍过了&#xff0c;不再重复 MQ高级用法-延时消息 什么是延时消息? Producer 将消息发送到 MQ 服务端&#xff0c;但并不期望这条消息立马投递&#xff0c;而是延迟一定时间后才投递到 Consumer 进行消费&#xff0c;该消息即延时消息 插件安装 R…

【深度学习】NLP,Transformer讲解,代码实战

文章目录 1. 前言2. Transformer结构训练过程1. 输入嵌入和位置编码2. 编码器层2.1 单头的注意力机制(便于理解)2.2 多头的注意力机制(Transformer真实使用的)2.3 残差连接和层归一化2.4 前馈神经网络&#xff08;FFN&#xff09;2.5 残差连接和层归一化2.6 总结 3. 解码器层 推…

Jenkins构建 Maven项目(微服务)并自动发布

前面讲了docker 安装Jenkins和gitlab代码管理工具&#xff0c;接下来我们讲一下Jenkins怎么构建 Maven项目。 1. 首先Jenkins配置下面3中工具类 首先是在本地安装三个jenkins自动配置相关的工具 1.1 JDK 由于我们使用docker来启动jenkins&#xff0c;其自带有jdk&#xff0c;…

摩托罗拉手机在中国以外的市场复兴,在欧洲和美国大幅增长

摩托罗拉曾是全球手机行业的领导者&#xff0c;不过自从被诺基亚击败后&#xff0c;它就辗转被卖了又卖&#xff0c;曾经辉煌的品牌堕落了&#xff0c;让人颇为可惜&#xff0c;不过如今摩托罗拉手机似乎看到了复兴的希望&#xff0c;在中国以外的市场都取得了快速增长。 市调机…

BC11 学生基本信息输入输出

BC11 学生基本信息输入输出 废话不多说上题目&#xff1a; 这道题表面上很简单&#xff0c;但是里面有很重要的点先给大家上正确的代码&#xff1a; #include<stdio.h> int main() {int stu 0;float c 0;float English 0;float math 0;scanf("%d;%f,%f,%f"…

Unity API学习之消息机制理论与应用

目录 消息机制 示例1&#xff1a;同一物体中不同组件之间发送消息 示例2&#xff1a;父与子对象之间的消息发送(BroadcastMassage) 父对象向子对象发送消息 ​编辑 子对象向父对象发送消息 消息机制 在Unity中&#xff0c;SendMessage 方法用于在游戏对象及其所有子对象上…

Zabbix6.0自动发现Linux服务器并添加主机

文章目录 一、整体流程二、操作过程 一、整体流程 Zabbix自动发现主机功能是Zabbix监控系统的一个重要功能&#xff0c;它能够自动发现并添加新的主机到监控系统中&#xff0c;从而减少人为繁琐的操作&#xff01; 步骤操作1️⃣ 第一步创建自动发现规则2️⃣ ​第二步创建自…

汇编语言作业(五)

目录 一、实验目的 二、实验内容 三、实验步骤以及结果 四、实验结果与分析 五、 实验总结 一、实验目的 1.熟悉掌握汇编语言的程序结构&#xff0c;能正确书写数据段、代码段等 2&#xff0c;利用debug功能&#xff0c;查看寄存器&#xff08;CS,IP,AX,DS..)及数据段的…

Python集合的基本概念和使用方法

目录 集合&#xff08;Set&#xff09; 基本概念 基本特性 基本操作 集合运算 成员测试 高级操作 集合推导式 总结 集合&#xff08;Set&#xff09; Python集合&#xff08;Set&#xff09;是Python语言中一个非常实用且强大的数据结构&#xff0c;它用于存储多个不…

Python实现删除Word文档中带有“指定内容”的段落文本(7)

前言 本文是该专栏的第7篇,后面会持续分享Python办公自动化干货知识,记得关注。 在处理word文档内容的时候,有时候我们需要一个干净整洁的文本内容。比如说,如下图所示的情况: 在处理上述word文档内容的时候,我们希望将文本底部的“下载链接”以及“附件信息”两个段落,…

力扣199. 二叉树的右视图

给定一个二叉树的 根节点 root&#xff0c;想象自己站在它的右侧&#xff0c;按照从顶部到底部的顺序&#xff0c;返回从右侧所能看到的节点值。 示例 1: 输入: [1,2,3,null,5,null,4] 输出: [1,3,4]示例 2: 输入: [1,null,3] 输出: [1,3]示例 3: 输入: [] 输出: [] /*** Def…

二叉树顺序结构——堆的结构与实现

二叉树顺序结构——堆的结构与实现 一、二叉树的顺序结构二、堆的概念及结构三、堆的实现堆向下调整算法堆的创建建堆时间复杂度堆的插入(堆向上调整算法)堆的删除堆的代码实现(使用VS2022的C语言)初始化、销毁构建、插入、删除返回堆顶元素、判空、返回有效元素个数 四、完整 …

【Python教程】4-字符串、列表、字典、元组与集合操作

在整理自己的笔记的时候发现了当年学习python时候整理的笔记&#xff0c;稍微整理一下&#xff0c;分享出来&#xff0c;方便记录和查看吧。个人觉得如果想简单了解一名语言或者技术&#xff0c;最简单的方式就是通过菜鸟教程去学习一下。今后会从python开始重新更新&#xff0…

7.高级纹理

前面的基础纹理包括法线纹理、渐变纹理和遮罩纹理等。这些纹理都属于低纬&#xff08;一维或二维&#xff09;纹理。 立方体纹理&#xff08;Cubemap&#xff09;实现环境映射 渲染纹理&#xff08;Render Texture&#xff09; 程序纹理&#xff08;Procedure Texture&#…

java线程生命周期介绍

Java线程的生命周期包含以下几个状态&#xff1a; 1.新建(New)&#xff1a;线程对象被创建&#xff0c;但是还没有调用start()方法。 1.运行(Runnable)&#xff1a;线程正在运行或者是就绪状态&#xff0c;等待CPU时间片。 1.阻塞(Blocked)&#xff1a;线程暂时停止执行&…

每日5题Day21 - LeetCode 101 - 105

每一步向前都是向自己的梦想更近一步&#xff0c;坚持不懈&#xff0c;勇往直前&#xff01; 第一题&#xff1a;101. 对称二叉树 - 力扣&#xff08;LeetCode&#xff09; class Solution {public boolean isSymmetric(TreeNode root) {if(root null){return true;}Stack<…