# -*- coding: utf-8 -*- # This file is auto-generated, don't edit it. Thanks. # pip install alibabacloud_ocr_api20210707==3.1.2 import json import os from alibabacloud_ocr_api20210707 import models as ocr_api_20210707_models from alibabacloud_ocr_api20210707.client import Client as ocr_api20210707Client from alibabacloud_tea_openapi import models as open_api_models from alibabacloud_tea_util import models as util_models class RecognizeHandwriting: def __init__(self): pass @staticmethod def create_client() -> ocr_api20210707Client: # 安全建议:建议将密钥移到环境变量中 config = open_api_models.Config( access_key_id=os.getenv('ALIYUN_ACCESS_KEY', 'LTAI5tE4tgpGcKWhbZg6C4bh'), access_key_secret=os.getenv('ALIYUN_ACCESS_SECRET', 'oizcTOZ8izbGUouboC00RcmGE8vBQ1') ) config.endpoint = f'ocr-api.cn-hangzhou.aliyuncs.com' return ocr_api20210707Client(config) @staticmethod def recognize_handwriting(imageUrl) -> None: client = RecognizeHandwriting.create_client() recognize_handwriting_request = ocr_api_20210707_models.RecognizeHandwritingRequest( url=imageUrl ) runtime = util_models.RuntimeOptions() try: response = client.recognize_handwriting_with_options( recognize_handwriting_request, runtime ) # 转换为字典格式 result = response.body.to_map() # print("完整响应:", result) # 检查状态码 # 正确解析数据(注意字段大小写) data_str = result.get('Data', {}) data_dict = json.loads(data_str) content = data_dict.get('content', '') print("识别成功:\n") return content except Exception as error: # 增强错误处理 if hasattr(error, 'data'): error_data = error.data print(f"错误详情:{error_data.get('Code', '未知')} - {error_data.get('Message', '无错误信息')}") print(f"建议:{error_data.get('Recommend', '无建议')}") else: print(f"未处理的异常:{str(error)}") return None if __name__ == '__main__': content = RecognizeHandwriting.recognize_handwriting('https://ylt.oss-cn-hangzhou.aliyuncs.com/HuangHai/1.jpg') print(content)