当前位置: 首页 > news >正文

PHP 调用微信小程序 OCR 接口

添加插件

在小程序后台 设置 - 第三方设置 - 插件管理 中添加 OCR支持 插件。

服务购买

在 微信OCR识别 | 微信服务平台 中购买接口配额。

免费版本目前配额为 100 次/日,可用 36500 天。

接入

如果是小程序前端接入,参考上方网页“接入文档”即可。

定义接口常量

const OCR_BANKCARD = 'https://api.weixin.qq.com/cv/ocr/bankcard';
const OCR_BIZ_LICENSE = 'https://api.weixin.qq.com/cv/ocr/bizlicense';
const OCR_DRIVER_LICENSE = 'https://api.weixin.qq.com/cv/ocr/drivinglicense';
const OCR_ID_CARD = 'https://api.weixin.qq.com/cv/ocr/idcard';
const OCR_PRINTED_TEXT = 'https://api.weixin.qq.com/cv/ocr/comm';
const OCR_VEHICLE_LICENSE = 'https://api.weixin.qq.com/cv/ocr/driving';

CURL 接入

/*** @param string            $api* @param string            $access_token* @param UploadedFile|null $image UploadedFile 强制数据类型可删除或替换,该参数为已上传文件对象* @param string|null       $image_url** @return array|null*/
public function imageOcr(string $api, string $access_token, ?UploadedFile $image = null, ?string $image_url = null): ?array {if ((!$image && !$image_url)) {return null;}$cFile = curl_file_create($image->getPathname(),mime_content_type($image->getPathname()),$image->getFilename());$ch = curl_init();curl_setopt_array($ch, [CURLOPT_URL => $api . '?' . http_build_query(['access_token' => $access_token,'img_url' => $image_url]),CURLOPT_POST => true,CURLOPT_POSTFIELDS => ['img' => $cFile],CURLOPT_RETURNTRANSFER => true]);$response = curl_exec($ch);curl_close($ch);return json_decode($response, true);
}

GuzzleHttp 客户端接入

/*** @param string            $api* @param string            $access_token* @param UploadedFile|null $image UploadedFile 强制数据类型可删除或替换,该参数为已上传文件对象* @param string|null       $image_url** @return array|null*/
public function imageOcr(string $api, string $access_token, ?UploadedFile $image = null, ?string $image_url = null): ?array {if ((!$image && !$image_url)) {return null;}$response = (new \GuzzleHttp\Client())->post($api, ['query' => ['access_token' => $access_token,'img_url' => $image_url],'multipart' => [['name' => 'img','contents' => file_get_contents($image->getPathname()),'filename' => $image->getFilename()]]])->getBody();return json_decode($response, true);
}

使用

假定 imageOcr 方法位于 WeChatOCR 类:

$ocr = new WeChatOCR();// 大多数框架中可以通过 $request->file('image') 的方式获得上传文件对象
$ocr->imageOcr(WeChatOCR::OCR_PRINTED_TEXT, $request->file('image'));// Image URL 方式
$ocr->imageOcr(WeChatOCR::OCR_ID_CARD, null, 'https://example.com/id_card.jpg');

http://www.taodudu.cc/news/show-4781407.html

相关文章:

  • 介绍 TensorFlow 的基本概念和使用场景
  • 深度学习模型的训练细节
  • Android中gradle.properties 和 gradle-wrapper.properties 作用
  • 批量获取oracle库存储过程
  • Vscode编辑器 js 输入log自动补全
  • 机器学习-12-sklearn案例02-集成学习
  • 免费的图片识别接口,百度ocr的SDK使用java版
  • autojs之浩然ocr-不安装插件就能用ocr
  • autojs-ocr-easyedge-nodejs
  • 软件调试相关
  • Bongiovi DPS for mac(音频增强工具)
  • DPS学习心得(一)
  • 中学数字化探究实验室建设要求和规范
  • 医药工业洁净厂房配电系统设计与节能应用
  • 浅谈医药工业洁净类厂房智能照明设计与选型
  • ds服务器没检测到有响应,设备或资源dns没检测到有响应 网络无法连接
  • EasyCVR调用录像回看接口报错“查询文件失败”排查过程及解决方式
  • 各种系统中密码文件的位置
  • Windbg查看死锁实例
  • Eclipse安装DSS会出现的一点问题
  • DSS源码分析
  • macOS系统_常用终端操作命令
  • java文件上传(tcp)
  • tomcat 7 最新版本 apache-tomcat-7.0.109
  • Windows Tomcat 下载安装
  • win10+tomcat7解压版安装小记
  • Mac下安装Tomcat7
  • tomcat下载不了
  • win7下安装配置Tomcat 7.0
  • “ORA-01017(:用户名/口令无效; 登录被拒绝)”解决办法
  • navicat连接出现ORA-01017: invalid username/password
  • 关于springboot项目连接oracle数据库报错 ORA01017的改正
  • Oracle ORA-01017: invalid username/password;logon denied问题解决
  • How to fix ORA-01017:用户名/口令无效 登录拒绝
  • Oracle不能用system用户 ORA-01017
  • ORA-01017:用户名/口令无效,登录被拒绝(ORA-01017: invalid username/password; logon denied)