Я хотел бы автоматизировать чтение документов PDF в R с помощью pdf_text - PullRequest
0 голосов
/ 20 июня 2019

В настоящее время у меня есть код для извлечения определенных деталей из документа PDF. Однако, поскольку у меня есть тысячи других документов PDF для извлечения информации, я хотел бы автоматизировать этот процесс. Я использую опцию pdf_text для чтения PDF-файлов в R. Мой код выглядит примерно так:

library(pdftools)

x <- pdf_text("Test.pdf")   
y1 <- str_split(x, "\r")

#pdf output contains a total of 7 lists

a <- y1 [[4]]
b <- c(a[4],a[11:13]) #Obtain only rows 4, 11 to 13 from list 4

n2 <- y1[[3]]
n3 <- c(n2[3]) #Obtain only rows 3 from list 3

n <- y1[[5]]
n1 <- c(n[3]) #Obtain only rows 3 from list 5

c <- y1[[6]]
d <- c(c[4:18]) #Obtain only rows 4 to 18 from list 6

e <- c(n3,b,d,n1) #Combining all necessary information into one list

z <- substr(s[1:21], start = 15, stop = 200) #to remove white spaces between quotes

Name <- z[1]
InterestedParty <- z[2]
TotalOwnBefore <- substr(z[11], start = 97, stop = 120)
Ownership <- list(NM = Name, Party = InterestedParty, OwnBefore = TotalOwnBefore)

write.csv(Ownership, file="MyData.csv")

Приведенный выше код позволяет мне вывести файл для одной компании. Однако у меня есть тысячи других PDF-файлов (от «Test_1.pdf» до «Test_1000.pdf») для чтения. Есть ли способ автоматизировать чтение файлов PDF в R с помощью pdf_text? Было бы также неплохо, если бы у меня была возможность хранить все результаты в одном файле вместо одной фирмы на файл.

1 Ответ

0 голосов
/ 21 июня 2019

Мне с тех пор удалось автоматизировать процесс с помощью цикла for следующим образом:

for (i in 1:1000){
    x <- paste("Test_",i,".pdf", sep="")
    y <- pdf_text(print(x))
    total <- strsplit(y, "\r")
    print(y1)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...