文字识别服务代码示例(python版本)
引导式阅读
Python
文字识别服务代码示例(python版本)
作者
C***
上架时间
2023-11-13 06:21:01

文字识别服务示例(python版本)

0.版本说明

本示例基于华为云SDK V3.0版本开发

1.简介

华为云提供了文字识别服务端SDK,您可以直接集成服务端SDK来调用文字识别服务的相关API,从而实现对文字识别服务的快速操作。

该示例展示了如何通过python版SDK实现文字识别。

2.开发前准备

  • 注册 华为云,并完成 实名认证
  • 已订阅文字识别服务。
  • 已具备开发环境,支持python3及以上版本。
  • 已获取华为云账号对应的Access Key(AK)和Secret Access Key(SK)。请在华为云控制台“我的凭证 > 访问密钥”页面上创建和查看您的AK/SK。具体请参见 访问密钥

3.安装SDK

# 安装核心库 pip install huaweicloudsdkcore # 安装Ocr服务库 pip install huaweicloudsdkocr

4. 开始使用

4.1 导入依赖模块

from huaweicloudsdkcore.auth.credentials import BasicCredentials from huaweicloudsdkocr.v1.region.ocr_region import OcrRegion from huaweicloudsdkcore.exceptions import exceptions from huaweicloudsdkocr.v1 import *

4.2 初始化认证信息

def get_credential(): return BasicCredentials(ak, sk)

相关参数说明如下所示:

  • ak:华为云账号Access Key。
  • sk:华为云账号Secret Access Key 。

4.3 初始化文字识别服务的客户端

def get_client(): return OcrClient.new_builder(OcrClient) .with_credentials(credentials) .with_region(OcrRegion.CN_NORTH_4) .build()

相关参数说明如下所示:

service region: 服务所在区域,例如:

  • CN_NORTH_1 北京一
  • CN_NORTH_4 北京四
  • CN_EAST_3 上海一
  • CN_SOUTH_1 华南广州

5. SDK demo代码解析

5.1 通用文字识别

def recognize_general_text_request(): try: request = RecognizeGeneralTextRequest() request.body = GeneralTextRequestBody( image=image_base64 ) response = client.recognize_general_text(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.2 通用表格识别

def recognize_general_table_request(): try: request = RecognizeGeneralTableRequest() request.body = GeneralTableRequestBody( image=image_base64 ) response = client.recognize_general_table(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.3 身份证识别

def recognize_id_card_request(): try: request = RecognizeIdCardRequest() request.body = IdCardRequestBody( image=image_base64 ) response = client.recognize_id_card(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.4 银行卡识别

def recognize_bankcard_request(): try: request = RecognizeBankcardRequest() request.body = BankcardRequestBody( image=image_base64 ) response = client.recognize_bankcard(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.5 智能分类识别

def recognize_auto_classification_request(): try: request = RecognizeAutoClassificationRequest() request.body = AutoClassificationRequestBody( image=image_base64 ) response = client.recognize_auto_classification(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.6 增值税发票识别

def recognize_vat_invoice_request(): try: request = RecognizeVatInvoiceRequest() request.body = VatInvoiceRequestBody( image=image_base64 ) response = client.recognize_vat_invoice(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.7 定额发票识别

def recognize_quota_invoice_request(): try: request = RecognizeQuotaInvoiceRequest() request.body = QuotaInvoiceRequestBody( image=image_base64 ) response = client.recognize_quota_invoice(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.8 手写文字识别

def recognize_handwriting_request(): try: request = RecognizeHandwritingRequest request.body = HandwritingRequestBody( image=image_base64 ) response = client.recognize_handwriting(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.9 行驶证识别

def recognize_vehicle_license_request(): try: request = RecognizeIdCardRequest() request.body = VehicleLicenseRequestBody( image=image_base64 ) response = client.recognize_vehicle_license(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.10 道路运输证识别

def recognize_transportation_license_request(): try: request = RecognizeTransportationLicenseRequest() request.body = TransportationLicenseRequestBody( image=image_base64 ) response = client.recognize_transportation_license(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.11 出租车发票识别

def recognize_taxi_invoice_request(): try: request = RecognizeTaxiInvoiceRequest() request.body = TaxiInvoiceRequestBody( image=image_base64 ) response = client.recognize_taxi_invoice(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.12 车辆通行费发票识别

def recognize_toll_invoice_request(): try: request = RecognizeTollInvoiceRequest() request.body = TollInvoiceRequestBody( image=image_base64 ) response = client.recognize_toll_invoice(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.13 机动车销售发票识别

def recognize_mvs_invoice_request(): try: request = RecognizeMvsInvoiceRequest() request.body = MvsInvoiceRequestBody( image=image_base64 ) response = client.recognize_mvs_invoice(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.14 车牌识别

def recognize_license_plate_request(): try: request = RecognizeLicensePlateRequest() request.body = LicensePlateRequestBody( image=image_base64 ) response = client.recognize_license_plate(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.15 飞机行程单识别

def recognize_flight_itinerary_request(): try: request = RecognizeFlightItineraryRequest() request.body = FlightItineraryRequestBody( image=image_base64 ) response = client.recognize_flight_itinerary(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.16 营业执照识别

def recognize_business_license_request(): try: request = RecognizeBusinessLicenseRequest() request.body = BusinessLicenseRequestBody( image=image_base64 ) response = client.recognize_business_license(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.17 网络图片识别

def recognize_web_image_request(): try: request = RecognizeWebImageRequest() request.body = WebImageRequestBody( image=image_base64 ) response = client.recognize_web_image(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.18 驾驶证识别

def recognize_driver_license_request(): try: request = RecognizeDriverLicenseRequest() request.body = DriverLicenseRequestBody( image=image_base64 ) response = client.recognize_driver_license(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.19 名片识别

def recognize_business_card_request(): try: request = RecognizeBusinessCardRequest() request.body = BusinessCardRequestBody( image=image_base64 ) response = client.recognize_business_card(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.20 火车票识别

def recognize_train_ticket_request(): try: request = RecognizeTrainTicketRequest() request.body = TrainTicketRequestBody( image=image_base64 ) response = client.recognize_train_ticket(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.21 VIN码识别

def recognize_vin_request(): try: request = RecognizeVinRequest() request.body = VinRequestBody( image=image_base64 ) response = client.recognize_vin(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.22 护照识别

def recognize_passport_request(): try: request = RecognizePassportRequest() request.body = PassportRequestBody( image=image_base64 ) response = client.recognize_passport(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.23 保险单识别

def recognize_insurance_policy_request(): try: request = RecognizeInsurancePolicyRequest() request.body = InsurancePolicyRequestBody( image=image_base64 ) response = client.recognize_insurance_policy(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

5.24 道路运输从业资格证识别

def recognize_transportation_qualification_certificate_request(): try: request = RecognizeQualificationCertificateRequest() request.body = QualificationCertificateRequestBody( image=image_base64 ) response = client.recognize_transportation_qualification_certificate(request) print(response) except exceptions.ClientRequestException as e: print(e.status_code) print(e.request_id) print(e.error_code) print(e.error_msg)

6.参考

更多信息请参考文字识别服务

7.修订记录

发布日期 文档版本 修订说明
2021-12-25 1.0 文档首次发布