无法打开连接,部署Shiny应用程序,其他语言的tesseract培训数据

时间:2019-02-17 09:37:22

标签: deployment shiny path permissions tesseract

我一直在努力使用tesseractpackage来部署闪亮的应用程序。似乎无法“访问”下载的语言。就我而言:英语和荷兰语。

设置语言时,生成的对象应“指向”路径。那就是闪亮无法打开连接的部分。

任何帮助都非常有用!

亲切的问候,R

下面,我复制了错误消息和相关代码。

这是我在部署后收到的错误消息:

文件警告(con,“ wb”):   无法打开文件“ /usr/share/tesseract-ocr/tessdata/nld.traineddata”:权限被拒绝 值错误[3L]:无法打开连接 调用:本地... tryCatch-> tryCatchList-> tryCatchOne-> 执行停止

这是我的代码

#loading software requirement
library(tesseract)

#download language (dutch)
tesseract_download('nld')
tesseract_download('eng')

#set language parameters for later use.
dutch <- tesseract('nld')
english <- tesseract('eng')

1 个答案:

答案 0 :(得分:0)

我设法使它自己工作。关键在于采取以下步骤:

  1. 创建(文件夹的)子目录,称为“ tessdata”。该子目录是您可以下载语言并“设置”语言的目录。
  2. 部署应用程序时,还必须部署该tessdata子目录。因此,在部署提示中,您也“勾选”了该文件夹的框。
  3. 然后确保tesseract引擎指向以下路径:

如何将tessdata文件夹与应用程序一起上传的屏幕截图 enter image description here

请参见下面的代码

#loading software requirementlibrary(tesseract)

#Make sure the tesseract package is 'pointing' at the right 'parent directory'
#which is in this case the path your shiny app is working from.
#That's why you need the dot ("."). Which is in essence the workdir.

Sys.setenv(TESSDAT_PREFIX = ".")

#so combining the workdir and the pre-installed folder 'tessdata'
path <- paste0(getwd(), '/tessdata')

#use this path for downloading
#download languages (dutch and english)
tesseract_download('nld', datapath = path)
tesseract_download('eng', datapath = path)


#set language parameters for later use, using the same path
dutch <- tesseract('nld', datapath = path)
english <- tesseract('eng', datapath = path)