人生苦短
一起搞机
xmlm
justhost
aws
cdncloud
dotdot
huocloud
recloud

一分钟接入腾讯云文字识别OCR服务端API教程

racknerd

老刘测评本文将介绍如何使用 API 3.0 Explorer 在线调试腾讯云文字识别OCR (Optical Character Recognition,光学字符识别)相关接口,并快速将该接口对应的腾讯云开发者工具套件(SDK) 集成到本地项目中。这里我们只需三步,就能轻松完成腾讯云文字识别接口调用。腾讯云文字识别OCR产品促销参见《腾讯云OCR限时特惠新用户9.9元享受千次服务》。

开通腾讯云文字识别服务

在调用文字识别相关接口前,您需要进入腾讯云文字识别控制台,申请开通对应的腾讯云文字识别服务。

开通腾讯云文字识别服务

服务开通成功后,我们将免费拥有该接口1000次/月的免费调用额度,同时也可以在文字识别购买页中购买对应文字识别服务的资源包,若免费额度以及资源包调用次数耗尽,接口计费将自动转为后付费方式按月进行结算,具体计费标准可以查看腾讯云文字识别OCR的购买指南。

开通腾讯云文字识别服务

调试腾讯云文字识别接口

文字识别服务开通成功后,进入文字识别 API 3.0 Explorer 在线接口调试页面,选择需要调用的接口,并填写个人密钥输入参数

调试腾讯云文字识别接口

(1)如何查看个人密钥?单击 查看密钥,进入控制台的 API 密钥管理界面,可查看您的个人密钥,若是新用户可单击【新建密钥】按钮创建个人密钥

查看个人密钥

(2)输入参数的含义?在 API 3.0 Explorer 界面的【参数说明】选项卡中可以查看对应接口输入参数的具体含义。

输入参数的含义

其中,Region 参数为每个接口的必填参数,表示提供文字识别服务的资源所在区,单击 【Region】 的下拉框可以选择不同地域的腾讯云服务器,建议选择与访问点 IP 地址距离相近的地域:例如你的访问点在深圳,建议 Region 选择距离较近的华南地区(广州)。

Region 参数

填写好个人密钥输入参数之后,选择代码生成选项卡,可以看到自动生成的不同编程语言代码(可支持 Java、Python、Node.js、PHP、GO、.NET 语言),生成代码中的部分字段信息和填写内容是关联的,如需调整传入参数,可在左侧修改参数值后重新生成代码。

选择代码生成选项卡

填写好个人密钥输入参数之后,选择【在线调用】选项卡,单击【发送请求】按钮可进行真实请求,供您调试、参考。

选择【在线调用】选项卡

集成腾讯云文字识别SDK

确认本地依赖环境满足以下条件:

编程环境SDK 集成要求
Node.js需要7.10.1版本及以上
Python需要2.7至3.6版本
Java需要 JDK 7版本及以上
Go需要 Go 1.9版本及以上
.Net需要 .NET Framework 4.5+ 和 .NET Core 2.1
PHP需要5.6.33版本及以上
C++需要 GCC 4.8版本及以上的 C++编辑器和 cmake 3.0版本及以上的编译工具,暂时仅支持 Linux 环境,不支持 Windows 环境

安装与本地依赖环境对应的腾讯云文字识别SDK,下面将以 Node.js 为例说明 SDK 安装、使用的方法,其他语言的 SDK 使用方法请参考 腾讯云 SDK 使用手册 。

(1)通过 npm 安装(推荐):npm 是 Node.js 的包管理工具,执行以下安装命令:

npm install tencentcloud-sdk-nodejs --save

(2)通过源码包安装:前往 GitHub 代码托管地址 或者 快速下载地址,下载源码压缩包。解压源码包到您项目合适的位置。

SDK 安装完成后,可在你的项目代码中引用 API 3.0 Explorer 自动生成的代码, 以 Node.js 为例,简易 demo 示例如下:

const tencentcloud = require("../../../../tencentcloud-sdk-nodejs"); const OcrClient = tencentcloud.ocr.v20181119.Client; const models = tencentcloud.ocr.v20181119.Models; const Credential = tencentcloud.common.Credential; const ClientProfile = tencentcloud.common.ClientProfile; const HttpProfile = tencentcloud.common.HttpProfile; let cred = new Credential(" SecretId ", " SecretKey "); let httpProfile = new HttpProfile(); let clientProfile = new ClientProfile(); /* 推荐使用 V3 鉴权。当内容超过 1M 时,必须使用 V3 签名鉴权。除 Node SDK 外,其他语言 SDK 都支持 V3。 clientProfile.signMethod = "TC3-HMAC-SHA256"; */ clientProfile.httpProfile = httpProfile; let client = new OcrClient(cred, "ap-guangzhou", clientProfile); let req = new models.IDCardOCRRequest(); req.ImageUrl = "[https://test.jpg](https://test.jpg/)"; req.CardSide = "FRONT"; let config = {"CropPortrait":true}; req.Config = JSON.stringify(config) client.IDCardOCR(req, function(errMsg, response) { if (errMsg) { console.log(errMsg); return; } console.log(response.to_json_string()); });

接入腾讯云OCR注意事项

SDK 调用公共参数时只需要关注 Region 字段,建议域名和 Region 统一使用 “ap-guangzhou”。

图片/视频转 Base64 时,需要去掉相关前缀data:image/jpg;base64,和换行符\n。如果SDK调用时出现如下情况报错:

[TencentCloudSDKException]message:AuthFailure.SignatureFailure-The provided credentials could not be validated because of exceeding request size limit, please use new signature method `TC3-HMAC-SHA256`. requestId:719970d4-5814-4dd9-9757-a3f11ecc9b20

则需要手动设置签名类型:

clientProfile.setSignMethod("TC3-HMAC-SHA256"); // 指定签名算法(默认为 HmacSHA256)

如果接口请求内容超过 1M,只能使用 V3 鉴权(TC3-HMAC-SHA256)。

文字识别 API 3.0 SDK 目前支持的语言包括:Node.js、Python、Java、PHP、Go、.Net、C++。如果您使用其他编程语言或者不想使用腾讯云 SDK,需要自行实现 V3 鉴权进行接口调用,如何实现请参考 Github 示例 。建议使用 API 3.0 Explorer 中签名串生成工具进行核验签名有效性。

OCR签名串生成

OCR热卖产品限时特惠,新用户9.9元享受千次服务,老用户特惠低至0.006元/次 >>

未经允许不得转载:老刘测评 » 一分钟接入腾讯云文字识别OCR服务端API教程