尝试创建CloudOCR对象时出现“ requests.exceptions.HTTPError:403客户端错误:URL禁止:...”

时间:2019-05-23 21:37:01

标签: python ocr abbyy

首先让我说我不确定是否正确使用了该库。

方法#1

我要离开this page(这里是Github)。我正在使用以下代码:

from ABBYY import CloudOCR

ocr = CloudOCR(application_id='ApplicationID', password='SuperSecretPasswordFromAbbyy')
pdf = open('blah.pdf', 'rb')
file = {pdf.name: pdf}

result = ocr.process_and_download(
  file,
  exportFormat='xml,pdfTextAndImages',
  language='English'
)

print(result)

这是我得到的错误:

requests.exceptions.HTTPError: 403 Client Error: Forbidden for url: http://cloud.ocrsdk.com/processImage?exportFormat=xml%2CpdfTextAndImages&language=English

如果我单击错误回溯内的链接,则会看到以下文本:

404 HTTP method GET not supported for /processImage, only method POST supported

方法2

我正在尝试将本地PDF发送到Cloud OCR平台。我成功使用了here找到的包,如下所示:

$ export ABBYY_APPID='ApplicationID'
$ export ABBYY_PWD='SuperSecretPasswordFromAbbyy'
...
$ python process.py -pdf blah.pdf result.txt

我想使用方法#1实现一个系统。我只是想知道如何做才能做到这一点。方法2起作用的事实表明身份验证不是问题。

1 个答案:

答案 0 :(得分:0)

状态:-使用这两种方法,我也遇到了相同的问题。

解决方案-如果您的Application_ID和密码正确,您仍然会收到相同的错误,原因是您在注册时选择了 UK US 表格。

美国和英国都有不同的ServerUrl:

  1. http://cloud-westus.ocrsdk.com(如果您在美国位置创建了应用程序)
  2. http://cloud-eu.ocrsdk.com(如果您在英国位置创建了应用程序)

根据位置更改了AbbyyOnlineSdk.py中的ServerUrl。

任务对我来说过去了!

希望获得帮助。