Tag: phantomjs rvest

使用R中的phantomJS来抓取动态加载内容的页面

背景我正在使用rvest从R中的一些网站上抓取产品信息。 这适用于除了一个网站之外的所有内容,其中的内容似乎是通过angularJS(?)动态加载的,因此不能通过URL参数迭代加载(就像我为其他网站所做的那样)。 具体url如下: http://www.hornbach.de/shop/Badarmaturen/Waschtischarmaturen/S3584/artikelliste.html 请记住,我的计算机上没有管理员权限,只能实现不需要或只需要一次性授予管理员权限的解决方案 期望的输出最后R中的表格包含产品信息(例如标签,价格,评级)=>在这个问题中,我纯粹需要帮助来动态加载和存储网站; 我可以自己处理R中的后处理。 如果你能把我推向正确的方向,那绝对是伟大的; 也许下面列出的方法之一是在正确的轨道上,但我似乎无法将这些方法转移到指定的网站。 目前的方法我发现phantomJS作为无头浏览器,afaik应该能够处理这个问题。 我对Java Script几乎一无所知,并且语法不同(至少对我来说)很大程度上来自于我更习惯的语言(R,Matlab,SQL)我真的很难实现其他可能在其他地方工作的方法我的代码。 基于这个例子 (非常感谢)我设法使用以下代码从第一个显示的页面中检索至少信息: R: require(rvest) ## change Phantom.js scrape file url <- 'http://www.hornbach.de/shop/Badarmaturen/Waschtischarmaturen/S3584/artikelliste.html' lines <- lines <- readLines("scrape_final.js") lines[1] <- paste0("var url ='", url ,"';") writeLines(lines, "scrape_final.js") ## Download website system("phantomjs scrape_final.js") ### use Rvest to scrape the downloaded website. web <- read_html("1.html") content […]