智能文档抽取工具使用指南
注意:在学习使用不同函数之前,建议先阅读请求描述,了解基本的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内容解释
返回参数 | 数据类型 | 描述 |
---|---|---|
code | String | 错误码,"200"代表成功 |
message | String | 错误信息 |
data | Object | 返回结果 |
+details | Object | 关键信息提取结果 |
++Page-index | Object | 对应页码提取结果 |
+++key | String | 关键信息字段提取结果,key:value |
+++tables | Array | 关键信息表格提取结果,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
}
}
}
}