首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用rvest从IMDB中抓取影评

使用rvest从IMDB中抓取影评
EN

Stack Overflow用户
提问于 2016-07-07 21:04:13
回答 1查看 896关注 0票数 0

我在IMDB上提取了一部电影的评论,但单独的评论之间有很多空行。它是无结构的,很难查看。我必须对它们分别应用特定的函数,然后将它们存储在一起作为1,对于一些文本挖掘,对于其他一些函数。

我如何构造(清理)它们并一次访问它们,以及如何将它们组合在一起并存储在一起?

下面是我收集评论的代码

代码语言:javascript
复制
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()
EN

回答 1

Stack Overflow用户

发布于 2016-07-08 00:12:04

我建议您在浏览DOM时更加具体。例如,此代码将只提供评论,而不会提供您可能不希望获取的任何其他信息:

代码语言:javascript
复制
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 ):

代码语言:javascript
复制
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中也漏掉了一个"tt“。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38246247

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档