制表器帮助-提取仅在某些页面上有效

时间:2019-06-11 20:40:34

标签: r pdf

我正在使用制表器来尝试处理一些存档的数据报告。对于可重现的示例,我使用的是PDF和CSV两种版本,但是几个月以来我只有PDF,所以我需要提取文本。

当我在pdf上运行extract_tables时,某些页面会提取而有些页面则不会。我可以获取数据,但只能通过使用extract_area的解决方法

可复制的示例:

library(tabulizer)
#only need tabulizer

#download csv for June 2019 from the AER site 
download.file("https://www.aer.ca/data/facilities/LLR_Report_06.pdf",destfile = "LLR_Report_test.pdf",mode = "wb")
#set file name equal to temp file location
f <- "LLR_Report_test.pdf"
# extract all the tables from pages 2 through 17 in a list - reveals the issue
table_list<-list()
i<-1
pages<-seq(2,17,1)
#scrape all the pages
for(page in pages){
    print(paste("working on page ",page))
    llr_table<-data.frame(extract_tables(f,pages = page),stringsAsFactors = F)
    table_list[[i]]<-llr_table
    i<-i+1
}

如果您检查列表,您将仅看到其中一些项目具有页面上的完整观察结果,而另一些则没有。我没有在页面上看到任何导致此问题的信息。

作为测试,请分别在第3页和第4页上进行隔离。第3页有效,第4页无效

#testing - page 3
llr_table_3<-data.frame(extract_tables(f,pages = 3,method = "decide"),stringsAsFactors = F)

#testing - page 3 works with stream
llr_table_3<-data.frame(extract_tables(f,pages = 3,method = "stream"),stringsAsFactors = F)

#testing - page 3 doesn't work with lattice
llr_table_3<-data.frame(extract_tables(f,pages = 3,method = "lattice"),stringsAsFactors = F)


    #testing page 4 can't get anything

    llr_tables_4<-data.frame(extract_tables(f,pages = 4),stringsAsFactors = F,method = "lattice")

我尝试了有和没有格子和流选项。唯一可能出现此问题的迹象是,第3页不适用于lattice选项,但适用于流。

我可以通过其他两种方式获取第4页上显示的数据。首先,如果我使用文本提取,则文本在那里,并且第3页和第4页的条目看起来类似:

llr_text_3<-data.frame(extract_text(f,pages = 3),stringsAsFactors = F)
llr_text_4<-data.frame(extract_text(f,pages = 4),stringsAsFactors = F)

我可以使用选择区域来获取数据,选择区域可以包括或不包括UI选择中的标题。

llr_area_4<-data.frame(extract_areas(f,pages = 4),stringsAsFactors = F)

任何帮助,不胜感激。否则,我需要进行大量复制和粘贴!

0 个答案:

没有答案