银行流水识别

接口描述

用户通过发送HTTP Post请求方式提交数据至公有云服务器,服务器识别并返回json格式的识别结果。

接口说明

请求URL:http://api.exocr.com/ocr/v1/bank_statement

请求方式:HTTP Post

返回格式:json

参数
Content-Type 使用二进制方式时,为multipart/form-data;使用url方式时,为application/x-www-form-urlencoded

请求参数

参数 必选 类型 说明
app_key string 请在控制台->我的应用中获取
app_secret string 请在控制台->我的应用中获取
image_base64 string 图像base64串。image_base64、image_url、image_binary三个参数中至少选择一个,读取优先级从前到后依次降低。如:同时选择了以上三个参数,则以image_base64图像为准。
image_url string 图像url地址。image_base64、image_url、image_binary三个参数中至少选择一个,读取优先级从前到后依次降低。如:同时选择了以上三个参数,则以image_base64图像为准。
image_binary data 图像二进制。image_base64、image_url、image_binary三个参数中至少选择一个,读取优先级从前到后依次降低。如:同时选择了以上三个参数,则以image_base64图像为准。

调用示例

java(相关依赖库下载)

package com.exocr.httpclient;

import java.io.File;

import java.io.FileInputStream;

import java.io.FileNotFoundException;

import java.io.IOException;

import java.io.InputStream;

import java.util.HashMap;

import java.util.Map;



import com.exocr.common.utils.HttpClientUtils;



public class Test {



   public static void main(String[] args) throws FileNotFoundException {





      /**

       * base64

       */

      //识别url

      String url = " http://api.exocr.com/ocr/v1/bank_statement";

      //设置请求参数

      Map<String, String> params = new HashMap<String, String>();

      params.put("app_key", "#####");

      params.put("app_secret", "#####");


      //设置识别图像base64编码

      params.put("image_base64", "base64ImageStr");

      //发送请求,得到识别结果

      String result = HttpClientUtils.doPost(url, params);

      System.out.println(result);





      /**

       * url

       */

      //设置请求参数、识别图像url

      params.put("app_key", "#####");

      params.put("app_secret", "#####");

      params.put("image_url", "imageUrl");


      //发送请求,得到识别结果

      result = HttpClientUtils.doPost(url, params);

      System.out.println(result);

      /**

       * 二进制

       */

      //设置请求参数

      params.put("app_key", "#####");

      params.put("app_secret", "#####");


      //拿到本地图像,写入数据流

      File file = new File("/Users/mac/logs/seal.png");

      InputStream in = new FileInputStream(file);

      //设置数据流

      Map<String, InputStream> streamMap = new HashMap<String, InputStream>();

      streamMap.put("image_binary", in);

      //发送请求,得到识别结果

      result = HttpClientUtils.doPostStream(url, params, streamMap);

      //关闭io流

      try {

         in.close();

      } catch (IOException e) {

         e.printStackTrace();

      }

      System.out.println(result);

   }

}

返回示例

{
    "result": {
        "account": {
            "quad": [
                0,
                0,
                100,
                0,
                100,
                100,
                0,
                100
            ],
            "score": 0.99,
            "words": "1234567890"
        },
        "statement": [
            {
                "counterparty_account": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "1234567211111"
                },
                "currency": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "人民币"
                },
                "amount": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "-500.00"
                },
                "counterparty_name": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "李四"
                },
                "time": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "19:50:30"
                },
                "date": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "2020-1-15"
                },
                "counterparty_bank": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "招商银行"
                },
                "balance": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "1000.00"
                },
                "type": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "转账"
                },
                "remark": {
                    "quad": [
                        0,
                        0,
                        100,
                        0,
                        100,
                        100,
                        0,
                        100
                    ],
                    "score": 0.9,
                    "words": "还钱"
                }
            }
        ],
        "name": {
            "quad": [
                0,
                0,
                100,
                0,
                100,
                100,
                0,
                100
            ],
            "score": 0.9,
            "words": "张三"
        },
        "end_date": {
            "quad": [
                0,
                0,
                100,
                0,
                100,
                100,
                0,
                100
            ],
            "score": 0.99,
            "words": "2020-12-31"
        },
        "start_date": {
            "quad": [
                0,
                0,
                100,
                0,
                100,
                100,
                0,
                100
            ],
            "score": 0.99,
            "words": "2020-01-01"
        }
    },
    "error_code": 0,
    "description": "识别成功",
    "request_id": "2AE7AC5ACFE747ADAECD3F241BF90B60",
    "recognize_time": 2468,
    "available_count": 624,
    "version": null
}

返回说明

通用参数

参数 类型 说明
result array 返回结果数组,包括所有识别信息
error_code int 错误码,返回0为正确,其他为错误
description string 识别结果描述
request_id string 请求唯一标识符
recognize_time int 识别所用时间,单位为毫秒
available_count int 识别剩余可用次数,次数不足时无法继续识别,可在控制台进行充值次数

result特有参数

参数 类型 说明
name Object 姓名
account Object 账号
start_date Object 起始时间
end_date Object 截止时间
statement Object 流水详情
date Object 交易日期
time Object 交易时间
amount Object 金额
balance Object 余额
type Object 交易类型
remark Object 附言
counterparty_name Object 交易对方名称
counterparty_account Object 交易对方账户
counterparty_bank Object 交易对方开户行
currency Object 币别
words string 当前字段的值
score float 可信度(1.0为可信度100%)
chinese_key String 该字段中文含义
quad String 四个顶点坐标
Copyright © 2020 易道博识 all right reserved,powered by Gitbook该文件修订时间: 2023-12-04 14:10:10

results matching ""

    No results matching ""