【发布时间】:2022-02-04 08:43:42
【问题描述】:
我正在尝试抓取网页https://www.filmweb.no/kinotoppen/ 以获取每部电影下的标题和其他信息。对于其他网页,我可以使用 SelectorGadget 运行几行 html_nodes() 和 html_text() 来选择 CSS 选择器来获得我想要的不同内容:
html <- read_html("https://www.filmweb.no/kinotoppen/")
title <- html %>%
html_nodes(".Kinotoppen_MovieTitle__2MFbT") %>%
html_text()
但是,在此网页上运行这些行时,我只会得到一个空字符向量。在进一步检查网页后,我发现它正在调用 javascripts。 我尝试将 html_nodes("script") 与 v8 库一起使用来运行 javascripts,但无济于事。我也不确定要运行哪些脚本,所以我尝试了所有这些:
ct <- v8()
ct$eval(scripts[3])
一般来说,有没有更简单的方法可以让网页变成我可以使用 rvest 的形式? 我对javascript一无所知。
【问题讨论】:
-
您可能需要 RSelenium。我发布了另一个类似的答案here。
-
您想要前 10 条信息还是其他内容?
-
所有前 60 名后按查看整个列表(“Se hele listen”)。在 Dave 的帮助下找到了下面的解决方案,但我们始终欢迎提供更多解决方案。
标签: javascript r web-scraping rvest