2016-07-07 2 views
0

Я извлек отзывы о фильме в IMDB, но в отдельных отзывах есть много пустых строк между ними. Он неструктурирован и очень трудный для просмотра. Я должен применять определенные функции по каждому из них отдельно, а затем хранить их вместе как 1 для некоторого интеллектуального анализа текста для некоторых других функций.Скребок Просмотрения фильмов с IMDB с использованием rvest

Как я могу их структурировать и получать к ним по одному, а также как объединить их и сохранить вместе?

Вот мой код для соскабливания отзывы

ID <- 1490017 
URL <- paste0("http://www.imdb.com/title/", ID, "/reviews?filter=prolific") 
MOVIE_URL <- read_html(URL) 
ex_review <- MOVIE_URL %>% 
html_nodes("p") %>% 
html_text() 

ответ

1

Я хотел бы предложить, что вы более конкретно при навигации по DOM. Например, этот код будет только предоставить отзывы и ни один из другой информации, которую вы, вероятно, не смотря скрести:

ID <- 1490017 
URL <- paste0("http://www.imdb.com/title/tt", ID, "/reviews?filter=prolific") 
MOVIE_URL <- read_html(URL) 
ex_review <- MOVIE_URL %>% html_nodes("#pagecontent") %>% 
    html_nodes("div+ p") %>% 
    html_text() 

А вот способ удалить разрывы строк, применяя функцию к каждому обзору, и слияние все обзоры в одном пункте (также см этот post на конкатенации элементов вектора и это post на замену разрывов строк):

ex_review <- gsub("[\r\n]", " ", ex_review) # replace line breaks 
sapply(ex_review, function(x){}) # apply function to each review 
ex_review <- paste(ex_review, collapse = "") # concatenate reviews into one paragraph 
write(ex_review, "test.txt") 

Я думаю, вы также отсутствует «ТТ» в URL.

+0

Это значительно улучшило извлечение. Большое спасибо за ответ. Однако моя основная проблема заключалась в том, чтобы обрабатывать просмотры, которые я извлек, поскольку я не могу этого сделать. Обработка их как удаление удаления нескольких строк между каждым просмотром. Также комбинируя текст, чтобы сформировать один большой абзац всех обзоров. Так как мне нужно также провести общий анализ. –

+0

Работает ли мой отредактированный ответ? – motorrrr

+0

Разрывы строк не удаляются с помощью этого метода. Другие вещи прекрасно работают :) –

Смежные вопросы