Skip to content
开发文档
能力中心
应用市场
WebOffice
开发者后台

文档内容抽取

文档内容抽取

请求说明

请求地址https://openapi.wps.cn/v7/drives/{drive_id}/files/{file_id}/content
请求方法GET
签名方式KSO-1
权限要求查询和管理文件(应用授权) kso.file.readwrite
查询文件(应用授权) kso.file.read
查询和管理文件(用户授权) kso.file.readwrite
查询文件(用户授权) kso.file.read

请求头(Header)

Header 名称参数类型是否必填说明
Content-Typestring使用:application/json
X-Kso-DatestringRFC1123 格式的日期,例: Wed, 23 Jan 2013 06:43:08 GMT
X-Kso-AuthorizationstringKSO-1 签名值,详见《签名方法》
Authorizationstring授权凭证,格式为:Bearer {access_token}

路径参数(Path)

名称参数类型说明
drive_idstring驱动盘 id
file_idstring文件 id

查询参数(Query)

名称参数类型是否必填说明
formatstring文档内容目标格式
include_elementsarray[string]指定抽取元素。默认元素为 para,且一定会被导出;其余附加元素根据请求参数选择性导出
para:段落;table:表格;textbox:文本框;component:部件(图片、音视频、脑图、流程图等);all

请求地址示例

[GET] https://openapi.wps.cn/v7/drives/{drive_id}/files/{file_id}/content?format={string}&include_elements={string_1}&include_elements={string_2}

响应体

名称参数类型说明
codeinteger响应代码。非 0 表示失败,参照《状态码说明》
msgstring响应信息
dataobject响应数据
moreobject更多的错误信息
docobject文字类的结构化数据,源格式为 otlpdfdocx 并且目标格式为 kdc 时适用
∟ commentsarray[object]批注,详细参数见下文
∟ mediasarray[object]媒体文件,详细参数见下文
∟ propobject文档的属性和元数据,详细参数见下文
∟ treeobject文档数据树状结构表示,以大纲级别为层级,详细参数见下文
dst_formatstring目标格式
kdc:结构化表示;plain:纯文本;markdown:markdown
markdownstringmarkdown 内容数据,目标格式为 markdown 时适用
plainstring纯文本内容数据,目标格式为 plain 时适用
src_formatstring源格式
otl:智能文档;pdf:pdf 文档;docx:后缀为 docx 的 word 文档
versionstring版本号,初始版本 1.0.0

响应体示例

json
{
  "code": 0,
  "msg": "string",
  "data": {
    "doc": {
      // 批注,详细参数见下文
      "comments": [],
      // 媒体文件,详细参数见下文
      "medias": [],
      // 文档的属性和元数据,详细参数见下文
      "prop": {},
      // 文档数据树状结构表示,以大纲级别为层级,详细参数见下文
      "tree": {}
    },
    "dst_format": "string",
    "markdown": "string",
    "plain": "string",
    "src_format": "string",
    "version": "string"
  }
}

接口返回的 data / doc 中的数据如下:

名称参数类型说明
commentsarray[object]批注
∟ blocksarray[object]批注数据
∟ ∟ idstring块 id
∟ ∟ indexinteger当前块的索引
∟ ∟ page_indexinteger当前块所在的页索引,从 0 开始
∟ ∟ rotatenumber当前块的旋转角度
∟ ∟ typestring块类型枚举
para:段落;table:表格;
textbox:文本框;component:部件(图片、音视频、脑图、流程图等)
∟ ∟ paraobject块类型为 para 时适用
∟ ∟ ∟ propobject段属性
∟ ∟ ∟ ∟ alignmentstring[enum]段落对齐方式
left:左对齐;center:居中对齐;right:右对齐;justify:两端对齐;distribute:分散对齐
∟ ∟ ∟ ∟ def_run_propobject默认句属性
∟ ∟ ∟ ∟ list_stringstring段落上的项目编号字符串
∟ ∟ ∟ ∟ outline_levelinteger大纲级别
1-9 表示级别 1-级别 9,10 表示正文,同段落属性中的大纲级别
∟ ∟ ∟ runsarray[object]句列表
∟ ∟ ∟ ∟ idstring句 id
∟ ∟ ∟ ∟ propobject句属性
∟ ∟ ∟ ∟ textstring文本内容
∟ ∟ tableobject块类型为 table 时适用
∟ ∟ ∟ rowsarray[object]表格行
∟ ∟ ∟ cellarray[object]表格单元格
∟ ∟ ∟ ∟ blocksobject
∟ ∟ ∟ ∟ col_spaninteger水平方向(向右)合并的单元格数量
∟ ∟ ∟ ∟ idstring单元格 id
∟ ∟ ∟ ∟ row_spaninteger垂直方向(向下)合并的单元格数量
∟ ∟ textboxobject块类型为 textbox 时适用
∟ ∟ ∟ blocksarray[object]文本框的内的块内容
∟ ∟ componentobject块类型为 component 时适用
∟ ∟ ∟ media_idstring媒体 id
∟ ∟ ∟ typestringcomponent 类型枚举
image:图片;audio:音频;video:视频
∟ ∟ bounding_boxobject当前块的外接矩形框的几何坐标
∟ ∟ ∟ x1integerleft-top 点 x 坐标
∟ ∟ ∟ x2integerright-bottom 点 x 坐标
∟ ∟ ∟ y1integerleft-top 点 y 坐标
∟ ∟ ∟ y2integerright-bottom 点 y 坐标
∟ ∟ tagsarray[object]tag 列表
∟ ∟ ∟ namestring名称
∟ ∟ ∟ valuestring
∟ referencesarray[object]参考
∟ ∟ idstring对应类型的 id
∟ ∟ typestring[enum]id 类型
run:句;block:块;cell:表格单元格
mediasarray[object]媒体文件
∟ datastring响应数据
∟ idstring媒体文件 id
∟ urlstring媒体数据,url 链接形式,数据存放在外部,data 和 url 两者选一
propobject文档的属性和元数据
∟ page_countinteger文档总页数
∟ page_propsarray[object]文档所有页的基本信息
∟ ∟ dpiinteger图像场景中,KDC 结果中坐标、页大小、字号等物理单位到像素单位的 dpi
∟ ∟ offset_anglenumber扫描件的旋转小角度
∟ ∟ rotateinteger页面与内容的旋转角度枚举,90 度的正整数倍
∟ ∟ sizeobject页大小,单位磅
∟ ∟ ∟ heightinteger高度
∟ ∟ ∟ widthinteger宽度
treeobject文档数据树状结构表示,以大纲级别为层级
∟ blocksarray[object]块,存储具体内容
∟ ∟ bounding_boxobject当前块的外接矩形框的几何坐标
∟ ∟ componentobject块类型为 component 时适用
∟ ∟ idstring块 id
∟ ∟ indexinteger当前块的索引
∟ ∟ page_indexinteger当前块所在的页索引,从 0 开始
∟ ∟ paraobject块类型为 para 时适用
∟ ∟ rotatenumber当前块的旋转角度
∟ ∟ tableobject块类型为 table 时适用
∟ ∟ tagsarray[object]tag 列表
∟ ∟ textboxobject块类型为 textbox 时适用
∟ ∟ typestring块类型枚举
para:段落;table:表格;
textbox:文本框;component:部件(图片、音视频、脑图、流程图等)
∟ childrenarray[object]子节点
∟ ∟ blocksarray[object]块,存储具体内容
∟ ∟ childrenarray[object]子节点
∟ ∟ outline_levelinteger大纲级别
1-9 表示级别 1-级别 9,10 表示正文,同段落属性中的大纲级别
∟ outline_levelinteger大纲级别
1-9 表示级别 1-级别 9,10 表示正文,同段落属性中的大纲级别

接口返回的 data / doc 中的数据示例如下:

json
{
  "doc": {
    "comments": [
      {
        "blocks": [
          {
            "id": "string",
            "index": 0,
            "page_index": 0,
            "rotate": 0,
            "type": "string",
            "para": {
              "prop": {
                "alignment": "string",
                "def_run_props": {},
                "list_string": "string",
                "outline_level": 0
              }
            },
            "table": {
              "row": [
                {
                  "cells": [
                    {
                      "blocks": {},
                      "col_span": 0,
                      "id": "string",
                      "row_span": 0
                    }
                  ]
                }
              ]
            },
            "textbox": [
              {
                "blocks": {}
              }
            ],
            "component": {
              "media_id": "string",
              "type": "string"
            },
            "bounding_box": {
              "x1": 0,
              "x2": 0,
              "y1": 0,
              "y2": 0
            },
            "tags": [
              {
                "name": "string",
                "value": "string"
              }
            ]
          }
        ],
        "references": [
          {
            "id": "string",
            "type": "string[enum]"
          }
        ]
      }
    ],
    "medias": [
      {
        "data": "string",
        "id": "string",
        "url": "string"
      }
    ],
    "prop": {
      "page_count": 0,
      "page_props": [
        {
          "dpi": 0,
          "offset_angle": 0,
          "rotate": 0,
          "size": {
            "height": 0,
            "width": 0
          }
        }
      ]
    },
    "tree": {
      "blocks": [
        {
          "bounding_box": "object",
          "component": "object",
          "id": "string",
          "index": 0,
          "page_index": 0,
          "para": "object",
          "rotate": 0,
          "table": "object",
          "tags": [],
          "textbox": "object",
          "type": "string"
        }
      ],
      "children": [
        {
          "blocks": [],
          "children": [],
          "outline_level": 0
        }
      ],
      "outline_level": 0
    }
  }
}
回到旧版