本文介绍如何使用Python SDK文件审核接口,检测文件中的文字和图片信息。
功能描述
文件审核目前只支持异步检测(异步检测不会实时返回检测结果)任务。关于参数的详细说明,请参见文件异步检测。
功能项 | 文件检测 |
支持检测图片所在的文件格式 | 支持DOC、DOCX、PPT、PPTX、PDF、XLS、XLSX、TXT格式 |
检测图片中的文字 | 支持 |
文件大小限制 | 200 MB |
同时检测文件的数量 | 10路 |
近线检测模式(用于批量文件检测) | 支持 |
其他 |
|
前提条件
安装Python依赖。关于安装Python依赖的具体操作,请参见安装Python依赖。
说明请一定按照安装Python依赖页面中的版本安装,否则会导致调用失败。
下载并在项目工程中引入Extension.Uploader工具类。
提交文件异步检测任务
接口 | 描述 | 支持的地域 |
FileAsyncScanV2Request | 提交文件异步检测任务,对文件中的文字和图片进行检测。 |
|
示例代码
# 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 | 获取文件异步检测结果。 |
|
示例代码
# 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)
文档内容是否对您有帮助?