我正在尝试遵循表单识别器API的文档,特别是recognizer的示例:
https://docs.microsoft.com/en-us/azure/cognitive-services/form-recognizer/quickstarts/client-library?pivots=programming-language-python&tabs=windows我正在尝试以下代码:
import sys
import logging
from azure.ai.formrecognizer import FormRecognizerClient
from azure.core.credentials import AzureKeyCredential
import os
import azure.ai.formrecognizer
endpoint = r"https://form-recognizer-XXXXX-test.cognitiveservices.azure.com/"
form_recognizer_client = FormRecognizerClient(endpoint=endpoint, credential="XXXXXXXXX")
receiptUrl = "https://raw.githubusercontent.com/Azure/azure-sdk-for-python/master/sdk/formrecognizer/azure-ai-formrecognizer/tests/sample_forms/receipt/contoso-receipt.png"
poller = form_recognizer_client.begin_recognize_receipts_from_url(receiptUrl)
receipts = poller.result()并得到这个错误:
request.http_request.headers[self._name] = self._credential.key
AttributeError: 'str' object has no attribute 'key'我看到的不同之处在于,在示例中,端点和键被称为类的属性:
form_recognizer_client = FormRecognizerClient(endpoint=self.endpoint, credential=AzureKeyCredential(self.key))但我看不出“自我”在哪里。值不是字符串的来源和原因。
发布于 2020-06-02 00:19:19
我同意在快速入门中有点不清楚这个键是从哪里来的。在这个例子中,API键被设置为一个类变量( self就来自这个变量),但是你不需要这样做就可以让你的代码正常工作。
为了认证成功,必须将字符串接口密钥"XXXXXXXXX“封装在凭据类AzureKeyCredential中。我已经更新了你下面的代码,请让我知道它是否适用于你:
import sys
import logging
from azure.ai.formrecognizer import FormRecognizerClient
from azure.core.credentials import AzureKeyCredential
import os
import azure.ai.formrecognizer
endpoint = r"https://form-recognizer-XXXXX-test.cognitiveservices.azure.com/"
form_recognizer_client = FormRecognizerClient(endpoint=endpoint,
credential=AzureKeyCredential("XXXXXXXXX"))
receiptUrl = "https://raw.githubusercontent.com/Azure/azure-sdk-for-
python/master/sdk/formrecognizer/azure-ai-
formrecognizer/tests/sample_forms/receipt/contoso-receipt.png"
poller = form_recognizer_client.begin_recognize_receipts_from_url(receiptUrl)
receipts = poller.result()https://stackoverflow.com/questions/62126000
复制相似问题