文件审核

本文介绍如何使用Python SDK文件审核接口,检测文件中的文字和图片信息。

功能描述

文件审核目前只支持异步检测(异步检测不会实时返回检测结果)任务。关于参数的详细说明,请参见文件异步检测

功能项

文件检测

支持检测图片所在的文件格式

支持DOC、DOCX、PPT、PPTX、PDF、XLS、XLSX、TXT格式

检测图片中的文字

支持

文件大小限制

200 MB

同时检测文件的数量

10路

近线检测模式(用于批量文件检测)

支持

其他

  • 支持开启或关闭检测图片

  • 支持指定最多检测的文件页数

前提条件

提交文件异步检测任务

接口

描述

支持的地域

FileAsyncScanV2Request

提交文件异步检测任务,对文件中的文字和图片进行检测。

  • cn-shanghai:华东2(上海)

  • cn-beijing:华北2(北京)

示例代码

# coding=utf-8

from aliyunsdkcore import client
from aliyunsdkcore.profile import region_provider
from aliyunsdkgreen.request.v20180509 import FileAsyncScanV2Request
import json

# 注意:此处实例化的client尽可能重复使用,提升检测性能。避免重复建立连接。
# 常见获取环境变量方式:
# 获取RAM用户AccessKey ID:os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
# 获取RAM用户AccessKey Secret:os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
clt = client.AcsClient("建议从环境变量中获取RAM用户AccessKey ID", "建议从环境变量中获取RAM用户AccessKey Secret", "cn-shanghai")
region_provider.modify_point('Green', 'cn-shanghai', 'green.cn-shanghai.aliyuncs.com')
request = FileAsyncScanV2Request.FileAsyncScanV2Request()
request.set_accept_format('JSON')
request.set_content(
    json.dumps({"modType": "All", "maxPages": 30, "offline": False, "bizType": "aligreen_default_bizType",
                "tasks": [
                    {"dataId": "检测数据ID",
                     "url": "待检测文件链接"}
                ]}))

try:
    response = clt.do_action_with_exception(request)
    print(response)
except Exception as err:
    print(err)

获取文件异步检测任务结果

接口

描述

支持的Region

FileAsyncScanResultsRequest

获取文件异步检测结果。

  • cn-shanghai:华东2(上海)

  • cn-beijing:华北2(北京)

示例代码

# coding=utf-8

from aliyunsdkcore import client
from aliyunsdkcore.profile import region_provider
from aliyunsdkgreen.request.v20180509 import FileAsyncScanResultsRequest
import json


# 注意:此处实例化的client尽可能重复使用,提升检测性能。避免重复建立连接。
# 常见获取环境变量方式:
# 获取RAM用户AccessKey ID:os.environ['ALIBABA_CLOUD_ACCESS_KEY_ID']
# 获取RAM用户AccessKey Secret:os.environ['ALIBABA_CLOUD_ACCESS_KEY_SECRET']
clt = client.AcsClient("建议从环境变量中获取RAM用户AccessKey ID", "建议从环境变量中获取RAM用户AccessKey Secret", "cn-shanghai")
region_provider.modify_point('Green', 'cn-shanghai', 'green.cn-shanghai.aliyuncs.com')
request = FileAsyncScanResultsRequest.FileAsyncScanResultsRequest()
request.set_accept_format('JSON')

request.set_content(
    json.dumps({"taskIds": ["文件检测任务ID"]}))

try:
    response = clt.do_action_with_exception(request)
    print(response)
except Exception as err:
    print(err)