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 import Config.Config # https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/2888868261/p303408.png class Sample: def __init__(self): pass @staticmethod def create_client() -> ocr_api20210707Client: """ 使用凭据初始化账号Client @return: Client @throws Exception """ # credential = CredentialClient() config = open_api_models.Config( access_key_id=Config.Config.ALY_AK, access_key_secret=Config.Config.ALY_SK, ) # Endpoint 请参考 https://api.aliyun.com/product/ocr-api config.endpoint = f'ocr-api.cn-hangzhou.aliyuncs.com' return ocr_api20210707Client(config) @staticmethod def main( args: List[str], ) -> None: client = Sample.create_client() recognize_edu_formula_request = ocr_api_20210707_models.RecognizeEduFormulaRequest() recognize_edu_formula_request.url = "https://help-static-aliyun-doc.aliyuncs.com/assets/img/zh-CN/2888868261/p303408.png" runtime = util_models.RuntimeOptions() try: # 复制代码运行请自行打印 API 的返回值 result = client.recognize_edu_formula_with_options(recognize_edu_formula_request, runtime) print(result) except Exception as error: # 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 # 错误 message print(error.message) # 诊断地址 print(error.data.get("Recommend")) UtilClient.assert_as_string(error.message) @staticmethod async def main_async( args: List[str], ) -> None: client = Sample.create_client() recognize_edu_formula_request = ocr_api_20210707_models.RecognizeEduFormulaRequest() runtime = util_models.RuntimeOptions() try: # 复制代码运行请自行打印 API 的返回值 await client.recognize_edu_formula_with_options_async(recognize_edu_formula_request, runtime) except Exception as error: # 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。 # 错误 message print(error.message) # 诊断地址 print(error.data.get("Recommend")) UtilClient.assert_as_string(error.message) if __name__ == '__main__': Sample.main(sys.argv[1:])