本教程展示了如何使用LEADTOOLS队列任务在Python应用程序的云服务。
概述 | |
---|---|
总结 | 本教程介绍了如何制作队列 请求和处理结果使用Python中的LEADTOOLS云服务应用程序。 |
完成时间 | 30分钟 |
项目 | 下载教程项目(7 KB) |
平台 | LEADTOOLS云服务API |
IDE | Visual Studio 2019 |
语言 | Python |
开发许可 | 下载LEADTOOLS |
试试用另一种语言 |
一定要检查以下网站信息LEADTOOLS云服务API。
LEADTOOLS服务计划发行:
服务计划 | 描述 |
---|---|
免费试用 | 免费评估 |
页面包 | 预付页面包 |
订阅 | 每月预付处理页面 |
进一步探索产品,请参考LEADTOOLS托管云服务的定价信息>服务计划方面。
定价细节,请参考//m.ahtuanjie.com/sdk/188金宝搏的网址客服products/hosted-services定价>页面包和订阅。
获得必要的应用程序ID和密码,请参考创建一个帐户与LEADTOOLS承载云服务和应用程序。
与项目和创建请求
包添加,可以开始编码。
在解决方案资源管理器,打开Queue.py
。添加以下变量。
请注意
在那里国家
替换为应用程序ID
和替换为应用程序密码
,一定要把你的应用程序ID和密码。
#简单的脚本,一个队列请求的处理结果LEADTOOLS云服务。
进口的要求
导入系统
导入的时间
servicesUrl =“https://azure.leadtools.com/api/”
#应用程序ID。
appId =“应用程序ID替换”
#应用程序密码。
密码=”替换为应用程序密码”
#第一页文件中标记进行处理
珍宝= 1
#值将指示发送到服务,其余的页面文件应该被处理。
lastPage = 1
# Enum对应的输出格式文件。我们会将文件转换为tif。
fileFormat = 4
#我们将上传的文件通过一个URl。文件也可以通过添加一个PostFile请求。只有一个文件每个请求将被接受。
#服务将使用以下的优先级在确定请求试图做什么GUID > URL >请求正文内容
fileURL =气管无名动脉瘘管的http://demo.leadtools.com/images/cloud_samples/ocr1 - 4.的
baseUploadUrl =“{}还是? fileurl = {} '
formattedUploadUrl = baseUploadUrl。格式(servicesUrl fileURL)
添加一个request.post
调用过程的还是
请求和获取结果的GUIDrequest.text
并提供下一节。这发出了一个还是
请求LEADTOOLS云服务API,如果成功,将返回一个唯一标识符(GUID),然后使用该GUID将一个查询。
请求=请求。帖子(formattedUploadUrl auth = (appId、密码)
#如果上传一个文件与HTTP请求
# baseUploadUrl = '{}还是'
# formattedUploadUrl = baseUploadUrl.format (servicesUrl)
#文件={“文件”:开放(路径/ /文件,rb)}
# = requests.post(请求
# formattedRecognitionUrl auth = (appId、密码),文件=文件)
如果请求。status_code ! = 200:
打印(“错误发送转换请求”)
打印(request.text)
sys。退出()
#的文件已经成功上传。现在我们已经GUID,我们可以使用它来排队的请求文件
guid = request.text
打印(“惟一的ID返回的服务:“+ guid +“\ n”)
接下来,确认提交的文件上传查询
请求使用保存的GUID。
baseQueryUrl =“{}查询id = {} ?”
formattedQueryUrl = baseQueryUrl。格式(servicesUrl guid)
而正确的:#调查以确定的服务请求已完成处理
请求=请求。帖子(formattedQueryUrl auth = (appId、密码)
returnedData = request.json ()
如果returnedData [“FileStatus”]! = 123:
打破
time . sleep (5)
一旦确认,行动可以排队对上传文件执行。提交ExtractText
和转换
请求排队与所提供的GUID。
baseRecognitionUrl =“{}识别/ ExtractText ?”珍宝= {}&lastPage = {} guid = {} '
formattedRecognitionUrl = baseRecognitionUrl.format (
珍宝,servicesUrl lastPage guid)
请求=请求。帖子(formattedRecognitionUrl auth = (appId、密码)
如果请求。status_code ! = 200:
打印(“错误发送转换请求”)
打印(request.text)
sys。退出()
打印(“ExtractText排队成功”)
baseConversionUrl =“{}转换/转换?”珍宝= {}&lastPage ={}格式= {}guid = {} '
formattedConversionUrl = baseConversionUrl.format (
珍宝,servicesUrl lastPage fileFormat, guid)
请求=请求。帖子(formattedConversionUrl auth = (appId、密码)
如果请求。status_code ! = 200:
打印(“错误发送转换请求”)
打印(request.text)
sys。退出()
打印(“转换排队成功”)
然后用一个初始化队列进行处理运行
再次请求,利用GUID。
baseRunUrl =“{}? id = {}”
formattedRunUrl = baseRunUrl。格式(servicesUrl guid)
请求=请求。帖子(formattedRunUrl auth = (appId、密码)
如果请求。status_code ! = 200:
打印(“错误发送转换请求”)
打印(request.text)
sys。退出()
打印(“文件已成功被标记为“运行)
确认运行
请求成功完成,创建一个查询
。如果成功响应将包含所有的结果ExtractText
和转换
以JSON格式的请求。
而正确的:#调查以确定的服务请求已完成处理
请求=请求。帖子(formattedQueryUrl auth = (appId、密码)
returnedData = request.json ()
如果returnedData [“FileStatus”]! = 100:
打破
time . sleep (5)
打印(“文件处理完文件状态:“+
str (returnedData [“FileStatus”)))
如果returnedData [“FileStatus”]! = 200:
sys。退出()
最后,解析JSON数据为一种可读的格式。
试一试:
打印(结果:")
returnedJson = returnedData [“RequestData”]
为requestObject returnedJson:
打印(服务类型:“+ requestObject [“ServiceType”])
如果requestObject [“ServiceType”)= =“转换”:
打印(返回的url:“)
为url在requestObject [“url”]:
打印(url)
elif requestObject [“ServiceType”)= =“识别”和requestObject [“RecognitionType”)= =“文本”:
打印(”URL中提取文本:“+ requestObject [“数据”])
sys。退出()
除了例外作为艾凡:
打印(“失败的解析JSON”)
打印(str (e))
按运行项目F5,或通过选择调试- >开始调试。
如果步骤正确,显示控制台和应用程序中提取文本信息和转换后的文件链接从返回的JSON数据。
本教程展示了如何通过队列任务LEADTOOLS云服务API。