2017-07-05 1 views
0

Pendant que j'utilisais Abbyy cloud SDK pour l'OCR, je continue d'obtenir l'erreur ci-dessous lorsque j'essaie d'utiliser la fonction ocrFile qui se trouve dans le paquet AbbyyR.Erreur dans la fonction ocrFile dans le paquet AbbyyR

"Erreur dans curl_download (finishedlist $ resultUrl [res $ id == finishedlist $ id],: Argument 'url' doit être une chaîne."

Lorsque j'envoie les fichiers vers le cloud et les processus tout fonctionne très bien, mais quand le nuage retourne les fichiers il y a un problème dans les télécharger. Je pensais que ce serait peut-être un problème de réseau ou d'un certificat, mais je ne peux pas résoudre le problème.

Merci à l'avance

Répondre

3

il est un problème dans le code source, il a besoin de la fonction as.character() pour url fonction ocrFile pdated comme suit:

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)) 
    } 

J'espère que cela aide.

+0

@ AhmadKöprülü Si cela répond à votre question, veuillez la modifier et la marquer comme acceptée en cliquant sur la coche à gauche. S'il vous plaît voir [Que dois-je faire quand quelqu'un répond à ma question?] (Https://stackoverflow.com/help/someone-answers) – G5W

+0

Oui cela a résolu mon problème, le code fonctionne bien maintenant merci pour votre aide. –