ocr.printedText

本接口应在服务器端调用,详细说明参见服务端API

本接口支持云调用。需开发者工具版本 >= 1.02.1904090(最新稳定版下载),wx-server-sdk >= 0.4.0

本接口提供基于小程序的通用印刷体 OCR 识别

调用方式:

HTTPS 调用

请求地址

  1. POST https://api.weixin.qq.com/cv/ocr/comm?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

请求参数

属性类型默认值必填说明
access_tokenstring接口调用凭证
img_urlstring要检测的图片 url,传这个则不用传 img 参数。
imgFormDataform-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

返回值

Object

返回的 JSON 数据包

属性类型说明
errcodestring错误码
errmsgstring错误信息
itemsstring识别结果
img_sizestring图片大小

使用说明

接口限制内测期间已认证的订阅号、服务号、企业号、小程序可直接调用,次数限制为500次/天。

使用 Tips此接口为后台接口,可基于自有业务承载情况,搭配小程序的拍照、相册选照等一起使用,即可完成身份证照片的采集、上传、识别、信息返回等流程,用于需要基于身份证、银行卡等实体卡或证,采集照片或文字信息等的业务场景。

图片说明文件大小限制:小于2M

图片支持使用img参数实时上传,也支持使用img_url参数传送图片地址,由微信后台下载图片进行识别。通用印刷体OCR适用于屏幕截图、印刷体照片等场景

请求数据示例

示例1:

  1. curl http://api.weixin.qq.com/cv/ocr/comm?img_url=ENCODE_URL&access_token=ACCESS_TOCKEN

示例2:

  1. curl -F img=@test.jpg’“http://api.weixin.qq.com/cv/ocr/comm?access_token=ACCESS_TOCKEN”

返回数据示例

  1. {
  2. "errcode": 0,
  3. "errmsg": "ok",
  4. "items": [ //识别结果
  5. {
  6. "text": "腾讯",
  7. "pos": {
  8. "left_top": {
  9. "x": 575,
  10. "y": 519
  11. },
  12. "right_top": {
  13. "x": 744,
  14. "y": 519
  15. },
  16. "right_bottom": {
  17. "x": 744,
  18. "y": 532
  19. },
  20. "left_bottom": {
  21. "x": 573,
  22. "y": 532
  23. }
  24. }
  25. },
  26. {
  27. "text": "微信团队",
  28. "pos": {
  29. "left_top": {
  30. "x": 670,
  31. "y": 516
  32. },
  33. "right_top": {
  34. "x": 762,
  35. "y": 517
  36. },
  37. "right_bottom": {
  38. "x": 762,
  39. "y": 532
  40. },
  41. "left_bottom": {
  42. "x": 670,
  43. "y": 531
  44. }
  45. }
  46. }
  47. ],
  48. "img_size": { //图片大小
  49. "w": 1280,
  50. "h": 720
  51. }
  52. }

云调用

云调用是小程序·云开发提供的在云函数中调用微信开放接口的能力,需要在云函数中通过 wx-server-sdk 使用。

接口方法

  1. openapi.ocr.printedText

需在 config.json 中配置 ocr.printedText API 的权限,详情

请求参数

属性类型默认值必填说明
imgUrlstring要检测的图片 url,传这个则不用传 img 参数。
imgFormDataform-data 中媒体文件标识,有filename、filelength、content-type等信息,传这个则不用传 img_url。

img 的结构

属性类型默认值必填说明
contentTypestring数据类型,传入 MIME Type
valueBuffer文件 Buffer

返回值

Object

返回的 JSON 数据包

属性类型说明
errCodestring错误码
errMsgstring错误信息
itemsstring识别结果
imgSizestring图片大小

异常

Object

抛出的异常

属性类型说明
errCodestring错误码
errMsgstring错误信息

errCode 的合法值

说明最低版本

使用说明

接口限制内测期间已认证的订阅号、服务号、企业号、小程序可直接调用,次数限制为500次/天。

使用 Tips此接口为后台接口,可基于自有业务承载情况,搭配小程序的拍照、相册选照等一起使用,即可完成身份证照片的采集、上传、识别、信息返回等流程,用于需要基于身份证、银行卡等实体卡或证,采集照片或文字信息等的业务场景。

图片说明文件大小限制:小于2M

图片支持使用img参数实时上传,也支持使用img_url参数传送图片地址,由微信后台下载图片进行识别。通用印刷体OCR适用于屏幕截图、印刷体照片等场景

请求数据示例

  1. const cloud = require('wx-server-sdk')
  2. cloud.init()
  3. exports.main = async (event, context) => {
  4. try {
  5. const result = await cloud.openapi.ocr.printedText({
  6. type: 'photo',
  7. imgUrl: 'ENCODE_URL'
  8. })
  9. console.log(result)
  10. return result
  11. } catch (err) {
  12. console.log(err)
  13. return err
  14. }
  15. }

  1. // cloud = require('wx-server-sdk')
  2. // ...
  3. // 方法返回 Promise
  4. cloud.openapi.ocr.printedText({
  5. type: 'photo',
  6. img: {
  7. contentType: 'image/png',
  8. value: Buffer
  9. }
  10. })

返回数据示例

  1. {
  2. "errcode": 0,
  3. "errmsg": "ok",
  4. "items": [ //识别结果
  5. {
  6. "text": "腾讯",
  7. "pos": {
  8. "left_top": {
  9. "x": 575,
  10. "y": 519
  11. },
  12. "right_top": {
  13. "x": 744,
  14. "y": 519
  15. },
  16. "right_bottom": {
  17. "x": 744,
  18. "y": 532
  19. },
  20. "left_bottom": {
  21. "x": 573,
  22. "y": 532
  23. }
  24. }
  25. },
  26. {
  27. "text": "微信团队",
  28. "pos": {
  29. "left_top": {
  30. "x": 670,
  31. "y": 516
  32. },
  33. "right_top": {
  34. "x": 762,
  35. "y": 517
  36. },
  37. "right_bottom": {
  38. "x": 762,
  39. "y": 532
  40. },
  41. "left_bottom": {
  42. "x": 670,
  43. "y": 531
  44. }
  45. }
  46. }
  47. ],
  48. "img_size": { //图片大小
  49. "w": 1280,
  50. "h": 720
  51. }
  52. }