Skip to content

智能文档抽取工具使用指南

注意:在学习使用不同函数之前,建议先阅读请求描述,了解基本的PDF处理流程。使用不同函数时,可以在上传文件时设置各自特殊的参数。其他基本步骤一致。

智能文档抽取:

java
{
    "keys": ["标题"],
    "tableHandles": ["发票号"],
    "extractType": "0"
}

所需参数:

keys: 文本,例如["标题"]。

tableHandles: 表头,例如["发票号"]。

extractType: 全文抽取(0:默认全文 1:全部文本 2:全部表格)。

Java 示例:

您需要将 apiKey 替换为您从控制台获取的 publicKey ,将 file 替换为您要转换的文件 ,language 替换为您想要的接口错误提示语言类型。

java
import java.io.*;
import okhttp3.*;
public class main {
  public static void main(String []args) throws IOException{
    OkHttpClient client = new OkHttpClient().newBuilder()
      .build();
    MediaType mediaType = MediaType.parse("text/plain");
    RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
      .addFormDataPart("file","{{file}}",
 RequestBody.create(MediaType.parse("application/octet-stream"),
                                          new File("<file>")))
      .addFormDataPart("language","{{language}}")
      .addFormDataPart("password","")
      .addFormDataPart("parameter","{ \"lang\": 8 , \"keys\":[], \"tableHandles\":[],\"extractType\":2}") 
      .build();
    Request request = new Request.Builder()
      .url("https://api-server.compdf.com/server/v1/process/idp/documentExtract")
      .method("POST", body)
      .addHeader("x-api-key", "{{apiKey}}")
      .build();
    Response response = client.newCall(request).execute();
  }
}

结果:

文件类型文件描述
.json智能文档提取完成的 Json 文件

返回数据结构说明:

JSON内容解释

返回参数数据类型描述
codeString错误码,"200"代表成功
messageString错误信息
dataObject返回结果
+detailsObject关键信息提取结果
++Page-indexObject对应页码提取结果
+++keyString关键信息字段提取结果,key:value
+++tablesArray关键信息表格提取结果,tables:[ [table1], [table2] ]

JSON结构示例:

json
{
    "code": "200",
    "msg": "success",
    "data": {
        "details": {
            "Page-1": {
                "Order Date": "xxx",
                "Order #": "xxx",
                "Quote#": "xxx",
                "Your estimated delivery date is": "xxx",
                "tables": null
            }
        }
    }
}