错误2005:尝试从表单识别器获取响应时

问题描述

当前,我正在使用2.1版的表单识别器预览来训练自定义模型。我能够在Form Recognizer标签工具中测试模型并获得输出。当我在程序中输入与标签工具中相同的文件时,出现以下错误

{"status": "Failed","createdDateTime": "2020-09-25T20:03:21Z","lastUpdatedDateTime": "2020-09-25T20:03:21Z","analyzeResult": {"version": "2.1.0","errors": [{"code": "2005","message": "The file submitted Couldn't be parsed. This can be due to one of the following reasons: the file format is not supported ( Supported formats include JPEG,PNG,BMP,PDF and TIFF),the file is corrupted or password protected."}]}}

使用的GET请求代码为:

resp = requests.get(url=get_url,headers={"Ocp-Apim-Subscription-Key":FORM_RECOGNIZER_SUBSCRIPTION_KEY})

解决方法

我已将文件保存到服务器,然后尝试从那里读取文件,并将读取的文件传递给表单识别器。这对我有用。但是我不知道为什么会发生。

,

this article之后,我也遇到了此确切的错误消息。

文章显示了4个步骤:

  1. 训练模型(要求SAS到blob-整个文件夹)
  2. 获取模型结果
  3. 分析(需要SAS来单个文件
  4. 获取分析结果
  5. 利润

我在步骤4遇到此错误。

在四处逛逛之后,我发现原因实际上不在步骤4中,而是在步骤3中。我是向blob提供SAS,而不是为文件提供SAS。

我更正了SAS URL后,它可以正常工作。

这是使SAS斑点的方法:

SAS blob

以下是将SAS导入文件的方法:

enter image description here

,

您要使用哪个文件作为输入?表单识别器支持PDF,Tiff和图像(PNG和JPEG)作为文件类型并输入到分析API。在此处查看更多详细信息-https://docs.microsoft.com/en-us/azure/cognitive-services/form-recognizer/quickstarts/python-labeled-data?tabs=v2-0#analyze-forms-for-key-value-pairs-and-tables