【问题标题】:Rvest: why does the following xpath returns empty listRvest:为什么以下xpath返回空列表
【发布时间】:2016-04-15 05:47:58
【问题描述】:

我正在尝试使用rvest 从烂番茄中提取标题

我使用以下代码:

urlhtml<-read_html("http://www.rottentomatoes.com/browse/opening/")
df<-html_text(html_nodes(urlhtml,xpath="//*[@id='movies-collection']/div/div/div[2]/a"))

xpath 源自 google chrome,所以我相信它是正确的,但是它返回空列表...我不知道出了什么问题。

有人可以帮忙吗? 非常感谢

【问题讨论】:

  • 您确定这些元素存在于您获取的文档中,还是以后可以通过 javascript 动态添加?
  • 我不是网络编程专家,但我确实看到了 html 检查中的元素,所以我相信他们不使用 javascript
  • @RogerLindsjö,如果它是由javascript动态添加的,我是否可以检查它?如果是这种情况,我该怎么做才能抓取数据?可以分享一下你的知识吗?
  • 不知道 R,但你能输出你获取的 html 吗?使用 wget 或 curl 获取内容表明 html 中没有电影信息。您可以尝试找到一个可以运行 JavaScript 以获取其余内容的组件,但更好的解决方案是使用 developer.rottentomatoes.com
  • 使用omdbapi。它比 RT API 更简单。而且,抓取 RT 违反了他们的服务条款。

标签: r web-scraping rvest


【解决方案1】:

谢谢大家,原来就像@RogerLindsjö说的,我需要一个javascript先解析html,然后用phantomjs配合R报废

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多