有奖捉虫:办公协同&微信生态&物联网文档专题 HOT

操作场景

本文将为您介绍如何使用 API 3.0 Explorer 在线调试文字识别相关接口,并快速将该接口对应的腾讯云开发者工具套件(SDK) 集成到本地项目中。

操作步骤

只需三步,轻松完成腾讯云文字识别增值税发票核验接口调用。

第一步:开通文字识别服务

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



增值税发票核验目前处于内测阶段,您需要填写 使用申请,申请审核通过之后,将为您开通服务。
服务开通成功后,您将获得增值税发票核验接口50次的免费调用额度,每个账户仅可获取一次。同时您也可以在文字识别购买页 中购买对应文字识别服务的资源包,若免费额度以及资源包调用次数耗尽,接口计费将自动转为后付费方式按月进行结算,具体计费标准可以查看增值税发票核验的 计费概述




第二步:使用 API3.0 Explorer 在线调用文字识别接口

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



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



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



其中,Region 参数为每个接口的必填参数,表示提供文字识别服务的资源所在区,单击 【Region】 的下拉框可以选择不同地域的腾讯云服务器,建议选择与访问点 IP 地址距离相近的地域:例如您的访问点在深圳,建议 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());

});

注意事项

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 中签名串生成工具进行核验签名有效性。