Очистка веб-текста с использованием readLines и tm-пакета в R - PullRequest
0 голосов
/ 21 февраля 2020

Я пытаюсь удалить коды и цифры регулярных выражений на веб-странице с помощью функции readLines. Я использую функцию unlist для некоторых из них. Тем не менее, я не уверен, как удалить цифры. Я думал об использовании tm-package, но мне, кажется, не хватает преобразования формата. Как я могу преобразовать мою веб-страницу, чтобы удалить номера и т. Д. c. с тм, или есть более простой способ убрать избыточность из текста? Я надеюсь объединить несколько веб-страниц, которые будут прочитаны, так что это будет довольно много очистки.

 library(rvest)
 library(tm)
 webpage <- readLines("https://www.sciencedaily.com/releases/2020/02/200219113746.htm", 
             encoding = "UCS-2LE")
 dirtytext <- unlist(strsplit(webpage,"\\r|\\n|\\t"))
 cleantext <- tm_map(dirtytext,removeNumbers)

В последней строке выдается сообщение об ошибке:

'Ошибка в UseMethod ("tm_map", x): нет применимого метода для' tm_map ', примененного к объекту класс "персонаж" '

1 Ответ

1 голос
/ 21 февраля 2020

Я не уверен, хотите ли вы включить lede, но следующее возвращает сюжет по абзацу (который удаляет все не-сюжетные элементы, содержащиеся в тексте, такие как реклама).

library(rvest)

url <- "https://www.sciencedaily.com/releases/2020/02/200219113746.htm"

page <- read_html(url)

story <- page %>%
  html_nodes("div#text p") %>%  # use "div#story_text p" to include lede
  html_text
...