Пытаясь очистить PDF в R, мой код будет очищать только 6 из 9 страниц, и я не уверен, почему я что-то упустил в своем коде? - PullRequest
0 голосов
/ 04 января 2019

Я пытаюсь почистить пару PDF-файлов в R, PDF1 имеет 9 страниц, а PDF2 имеет 12 страниц. Когда я запускаю приведенный ниже код, он очищает оба PDF-файла, но только до страницы 6 и ничего после этого. Для этого есть причина? Чего-то не хватает в моем коде?

library(tm)
read <- readPDF(engine = "xpdf", control = list(text = "-layout")) 
document <- Corpus(URISource("C:\\Users\\Goku\\Documents\\Python Scripts\\PDF Scraping\\123.pdf"), readerControl = list(reader = read))
doc <- content(document[[1]])
head(doc)

Вы можете найти pdf по адресу: https://www.scribd.com/document/396797318/123

1 Ответ

0 голосов
/ 04 января 2019

Я не могу повторить вашу проблему.Используя ваш документ, я получаю 12 страниц, читая текст в обоих направлениях.Проверка их идентичности также приводит к истине.

tm с читателем pdftools:

library(tm)

read <- readPDF(engine = "pdftools", control = list(text = "-layout")) 
document <- Corpus(URISource("396797318-123.pdf"), readerControl = list(reader = read))

с использованием pdftools напрямую:

library(pdftools)

text <- pdf_text("396797318-123.pdf")

Проверьте, идентичны ли они:

tm_text <- as.vector(sapply(document, as.character))
identical(text, tm_text)
[1] TRUE

str(document)
List of 1
 $ 396797318-123.pdf:List of 2
  ..$ content: chr [1:12] "            Training and Development Policy\r\n                                                     Contents\r\"| __truncated__ "1.2 As a guiding principle, all staff must be offered appropriate and relevant\r\n     development opportunitie"| __truncated__ "   • Short Term Externally Provided Training (e.g. one or two day external\r\n     courses)\r\n   • Longer Term"| __truncated__ "     are at no cost) together with periodic training bulletins informing employees of\r\n     impending courses"| __truncated__ ...
  ..$ meta   :List of 7
  .. ..$ author       : chr "leanne.cutts"
  .. ..$ datetimestamp: POSIXct[1:1], format: "2014-02-28 17:57:34"
  .. ..$ description  : chr ""
  .. ..$ heading      : chr "Training and Development Policy"
  .. ..$ id           : chr "396797318-123.pdf"
  .. ..$ language     : chr "en"
  .. ..$ origin       : chr "PDFCreator Version 1.4.3"
  .. ..- attr(*, "class")= chr "TextDocumentMeta"
  ..- attr(*, "class")= chr [1:2] "PlainTextDocument" "TextDocument"
 - attr(*, "class")= chr [1:2] "VCorpus" "Corpus"
...