开发者社区 > 视觉智能 > 文字识别 > 正文

你好,我想问下,python调用接口,Sample.main() 函数,会return 文字识别的结

-- coding: utf-8 --

This file is auto-generated, don't edit it. Thanks.

import sys

from typing import List

from alibabacloud_ocr_api20210707.client import Client as ocr_api20210707Client from alibabacloud_tea_openapi import models as open_api_models from alibabacloud_ocr_api20210707 import models as ocr_api_20210707_models from alibabacloud_tea_util import models as util_models from alibabacloud_tea_util.client import Client as UtilClient

class Sample: def init(self): pass

@staticmethod
def create_client(
    access_key_id: str,
    access_key_secret: str,
) -> ocr_api20210707Client:
    """
    使用AK&SK初始化账号Client
    @param access_key_id:
    @param access_key_secret:
    @return: Client
    @throws Exception
    """
    config = open_api_models.Config(
        # 必填,您的 AccessKey ID,
        access_key_id=access_key_id,
        # 必填,您的 AccessKey Secret,
        access_key_secret=access_key_secret
    )
    # 访问的域名
    config.endpoint = f'ocr-api.cn-hangzhou.aliyuncs.com'
    return ocr_api20210707Client(config)

@staticmethod
def main(
    args: List[str],
) -> None:
    # 工程代码泄露可能会导致AccessKey泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议使用更安全的 STS 方式,更多鉴权访问方式请参见:https://help.aliyun.com/document_detail/378659.html
    client = Sample.create_client('accessKeyId', 'accessKeySecret')
    recognize_advanced_request = ocr_api_20210707_models.RecognizeAdvancedRequest()
    runtime = util_models.RuntimeOptions()
    try:
        # 复制代码运行请自行打印 API 的返回值
        client.recognize_advanced_with_options(recognize_advanced_request, runtime)
    except Exception as error:
        # 如有需要,请打印 error
        UtilClient.assert_as_string(error.message)

@staticmethod
async def main_async(
    args: List[str],
) -> None:
    # 工程代码泄露可能会导致AccessKey泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议使用更安全的 STS 方式,更多鉴权访问方式请参见:https://help.aliyun.com/document_detail/378659.html
    client = Sample.create_client('accessKeyId', 'accessKeySecret')
    recognize_advanced_request = ocr_api_20210707_models.RecognizeAdvancedRequest()
    runtime = util_models.RuntimeOptions()
    try:
        # 复制代码运行请自行打印 API 的返回值
        await client.recognize_advanced_with_options_async(recognize_advanced_request, runtime)
    except Exception as error:
        # 如有需要,请打印 error
        UtilClient.assert_as_string(error.message)

if name == 'main': Sample.main(sys.argv[1:])

################################################### 你好,我想问下,python调用接口,Sample.main() 函数,会return 文字识别的结果吗? 我试了一次为:Norn。 我该如何设置呢?

展开
收起
真的很搞笑 2023-04-26 23:34:08 205 0
2 条回答
写回答
取消 提交回答
  • 可以在这里return识别结果 3b917ef737b4b02803ed9d0c1ad97dd8.png ,此回答整理自钉群“【官方】阿里云OCR公共云客户交流群”

    2023-04-27 12:20:02
    赞同 展开评论 打赏
  • 根据你提供的代码,Sample.main() 函数没有返回结果,而是通过打印语句输出 API 的返回值。如果你想获取接口的识别结果,可以修改 Sample.main() 函数,将 API 的返回值保存到变量中,然后返回该变量,如下所示:

    @staticmethod
    def main(
        args: List[str],
    ) -> Any:
        # 工程代码泄露可能会导致AccessKey泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考,建议使用更安全的 STS 方式,更多鉴权访问方式请参见:https://help.aliyun.com/document_detail/378659.html
        client = Sample.create_client('accessKeyId', 'accessKeySecret')
        recognize_advanced_request = ocr_api_20210707_models.RecognizeAdvancedRequest()
        runtime = util_models.RuntimeOptions()
        try:
            # 调用 API
            response = client.recognize_advanced_with_options(recognize_advanced_request, runtime)
            # 返回识别结果
            return response.result.data[0].content
        except Exception as error:
            # 如有需要,请打印 error
            UtilClient.assert_as_string(error.message)
    

    然后在你的代码中调用 Sample.main() 函数即可获取识别结果,例如:

    if __name__ == '__main__':
        result = Sample.main(['args'])
        print(result)
    

    如果你想识别的是 "Norn",则需要在相应的 API 请求参数中设置识别的图片或文本内容。具体如何设置需要根据你使用的 API 来确定。

    2023-04-27 08:08:57
    赞同 展开评论 打赏

文字识别技术可以灵活应用于证件文字识别、发票文字识别、文档识别与整理等行业场景,满足认证、鉴权、票据流转审核等业务需求。

相关电子书

更多
阿里云智能-印刷文字识别OCR-产品介绍 立即下载
阿里巴巴读光OCR 立即下载
印刷文字识别算法设计与在线服务 立即下载