目前我正试图捕捉特定网页上列出的不同事件的href。此页面的内容由JavaScript生成,有两页。抓取并处理第一页没什么大不了的,但是我无法抓取第二页。 我已经尝试使用httr中的post()方法,但已爬网的数据仍然是第一页的内容。 这是我的代码:
library(rvest)
library(tidyverse)
library(stringr)
library(httr)
library(dplyr)
res <- POST("http://www.pg-sanderau.de/aktuelles---termine/#page2",
encode="form",
user_agent("Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.50 Safari/537.36"),
add_headers(`Referer`="http://www.pg-sanderau.de/aktuelles---termine/#page2"))
res_t <- content(res, as="text")
res_h <- paste0(unlist(strsplit(res_t, "\r\n"))[-1], sep="", collapse="\n")
res_h %>%
read_html() %>%
html_nodes(".itemtitle a")%>%
html_attr("href") -> Links1
Links1 <- data.frame(Links1)
所以我的数据框包含第一页上的十个hrefs&#34; http://www.pg-sanderau.de/aktuelles---termine/#page1&#34;但不是第二页的最后四个。我使用了错误的包裹还是我的方法不正确?
非常有帮助会很棒! 感谢
答案 0 :(得分:0)
如果网址为page1
,则网页始终加载page2
并通过javascript加载#page2
。您可以查看网络标签以获取url
从哪个页面获取第2页的信息
答案 1 :(得分:0)
好的PhantomJS对我来说很好。