Я новичок в R. Я пытаюсь создать набор данных из газеты, чтобы иметь возможность выполнять анализ тидитекста.
Используя некоторую онлайн-справку, я собрал ссылки на 400 статей для их редакционных статей. Теперь я хочу получить текст с редакционных страниц. Но я получаю следующую ошибку: Ошибка в open.connection (x, "rb"): ошибка HTTP 403.
Я пытался удалить ссылки на все статьи, опубликованные в Интернете. Это 400.
library(rvest)
library (purrr)
dawnedlnk <- lapply(paste0('https://www.dawn.com/authors/2677/editorial/', 1:20),
function(url){
read_html(url) %>%
html_nodes(".m-2") %>%
html_nodes(".story__link") %>%
html_attr("href")
})
edlk <- unlist (dawnedlnk)
elpages <- edlk %>% map(read_html)
Я хочу отобразить все 400 страниц. Они получают заголовки и текст с каждой страницы. Я попробовал этот подход на пяти ссылках, чтобы он работал, но я не могу отобразить 400 страниц.
Если я смогу отобразить 400 страниц, то я бы ожидал повторить следующий код, который помог мне получить 20 редакционных постов.
library(rvest)
library(purrr)
library(tidyverse)
url <- "https://www.dawn.com/authors/2677/editorial"
edit <- read_html(url)
el <- edit %>%
html_nodes(".m-2") %>%
html_nodes(".story__link") %>%
html_attr("href") %>%
xml2::url_absolute("http://dawn.com")
elpages <- edlk %>% map(read_html)
eltitle = elpages %>%
map_chr(. %>%
html_node(".story__title") %>%
html_text()
)
elauthor = elpages %>%
map_chr(. %>%
html_node(".story__byline") %>%
html_text()
)
elpubtime = elpages %>%
map_chr(. %>%
html_node(".story__time") %>%
html_text()
)
eltext = elpages %>%
map_chr(. %>%
html_node(".modifier--blockquote-center-narrow p") %>%
html_text()
)
dawned <- tibble (author = elauthor, title = eltitle, text = eltext, pubtime = elpubtime, links = el, paper = "Dawn")