AbbyyR 包中的 ocrFile 函数出错
Error in ocrFile function in AbbyyR package
当我使用 Abbyy cloud SDK 进行 OCR 时,当我尝试使用 AbbyyR 包中的 ocrFile 函数时,我不断收到以下错误。
" curl_download(finishedlist$resultUrl[res$id == finishedlist$id] 中的错误:
参数 'url' 必须是字符串。 “
当我将文件发送到云端并进行处理时,一切正常,但是当云端 returns 文件下载时出现问题。我以为可能是网络或证书问题,但我无法解决问题。
提前致谢
源代码有问题,url 需要 as.character() 函数。
我更新了 ocrFile 函数如下:
install.packages("curl")
library(curl)
new_ocrFile<-function (file_path = "", output_dir = "./", exportFormat = c("txt",
"txtUnstructured", "rtf", "docx", "xlsx", "pptx", "pdfSearchable",
"pdfTextAndImages", "pdfa", "xml", "xmlForCorrectedImage",
"alto"), save_to_file = TRUE)
{
exportFormat <- match.arg(exportFormat)
res <- processImage(file_path = file_path, exportFormat = exportFormat)
while (!(any(as.character(res$id) == as.character(listFinishedTasks()$id)))) {
Sys.sleep(1)
}
finishedlist <- listFinishedTasks()
res$id <- as.character(res$id)
finishedlist$id <- as.character(finishedlist$id)
if (identical(save_to_file, FALSE)) {
res <- curl_fetch_memory(as.character(finishedlist$resultUrl[res$id ==
finishedlist$id]))
return(rawToChar(res$content))
}
curl_download(as.character(finishedlist$resultUrl[res$id == finishedlist$id]),
destfile = paste0(output_dir, unlist(strsplit(basename(file_path),
"[.]"))[1], ".", exportFormat))
}
希望对你有帮助。
当我使用 Abbyy cloud SDK 进行 OCR 时,当我尝试使用 AbbyyR 包中的 ocrFile 函数时,我不断收到以下错误。
" curl_download(finishedlist$resultUrl[res$id == finishedlist$id] 中的错误: 参数 'url' 必须是字符串。 “
当我将文件发送到云端并进行处理时,一切正常,但是当云端 returns 文件下载时出现问题。我以为可能是网络或证书问题,但我无法解决问题。
提前致谢
源代码有问题,url 需要 as.character() 函数。 我更新了 ocrFile 函数如下:
install.packages("curl")
library(curl)
new_ocrFile<-function (file_path = "", output_dir = "./", exportFormat = c("txt",
"txtUnstructured", "rtf", "docx", "xlsx", "pptx", "pdfSearchable",
"pdfTextAndImages", "pdfa", "xml", "xmlForCorrectedImage",
"alto"), save_to_file = TRUE)
{
exportFormat <- match.arg(exportFormat)
res <- processImage(file_path = file_path, exportFormat = exportFormat)
while (!(any(as.character(res$id) == as.character(listFinishedTasks()$id)))) {
Sys.sleep(1)
}
finishedlist <- listFinishedTasks()
res$id <- as.character(res$id)
finishedlist$id <- as.character(finishedlist$id)
if (identical(save_to_file, FALSE)) {
res <- curl_fetch_memory(as.character(finishedlist$resultUrl[res$id ==
finishedlist$id]))
return(rawToChar(res$content))
}
curl_download(as.character(finishedlist$resultUrl[res$id == finishedlist$id]),
destfile = paste0(output_dir, unlist(strsplit(basename(file_path),
"[.]"))[1], ".", exportFormat))
}
希望对你有帮助。