1

我正在尝试使用制表器解析一些历史原油价格数据,并遇到了似乎是编码错误的问题。下面是一个可重现的示例,其中包含我要抓取的文件之一。

library(tidyverse)
library(tabulizer)
library(pdftools)
#example file
file <- "https://paalp.s3.amazonaws.com/plains/media/bulletins/paa/monthly/2000/December%202000.pdf"

#download file
#check file info - nothing on encoding per se
pdf_info(file)

pdf_info 除了文件相对较旧外,没有返回任何异常。我尝试将这些作为表格或文本运行,但我得到了不同类型的错误,但文本调用似乎揭示了问题可能出在哪里。

#attempt to parse table from page 1
pricing_tables<-extract_tables(file,page=1)

#grab as text
pricing_text<-extract_text("Files/test.pdf",page=1)

当我作为表格抓取时,定价的第一列没有分隔,插入额外的小数等等。

数据框视图

当我以文本形式毕业时,我可以看到编码字符似乎将其中的一些字符用于循环。

West Texas Intermediate - Area #1...................................................…......................................................…30.75 * 28 75 * 28 00 * 26.25 * 26.75 * 26.25 *\r\n

其他几个测试位。首先,我可以将 PDF 渲染为位图,并适当地传输内容。不确定这是否提供信息。

# render into raw bitmap
bitmap <- pdf_render_page(file)
png::writePNG(bitmap, "test.png")

接下来,如果我从 PDF 复制到 Excel,则会重现相同的错误:

Excel 测试

在 Word 中也是如此: 单词测试

非常感谢任何想法或帮助。

安德鲁

4

0 回答 0