R HTTR网页刮痧,需要点击按钮才能获得更多数据

时间:2016-10-13 23:29:12

标签: r web-scraping httr

我试图引入以下网页的HTML内容,但我只能提取前25个结果。 https://untappd.com/search?q=Oktoberfest

有一个"显示更多"按钮,展开搜索以列出下一个25.实际上,我试图使用以下代码打印此列表中出现的每种啤酒的名称(不仅仅是前25个):

require(httr)

for(i in 1:25){
Search.Term <- "Oktoberfest Beer"
Search.Term <- gsub(" ","+",Search.Term)
url.name <- paste0("https://untappd.com/search?q=",Search.Term)
url.get <- GET(url.name)
url.content <- content(url.get,as="text")


Start.String <- as.numeric(data.frame(gregexpr("beer-details",url.content[[1]])[1])[i,1])
new.test <- substr(url.content,Start.String,Start.String+500)
Start.String <- as.numeric(data.frame(gregexpr("[0-9]",new.test))[1,1])
new.test <- substr(new.test,Start.String,Start.String+100)
Start.String <- as.numeric(data.frame(gregexpr(">",new.test)[1])[1,1])
End.String <- as.numeric(data.frame(gregexpr("<",new.test)[1])[1,1])
Beer.Name <- substr(new.test,Start.String+1,End.String-1)

print(Beer.Name)
}

[1] "Samuel Adams OctoberFest"
[1] "Spaten Oktoberfest Ur-Märzen / Winter"
#etc...

有没有办法可以编写代码的第一部分,以便&#34;显示更多&#34;按钮扩展?我承认我对网络抓取相当新,所以非常感谢任何帮助。 rvest包有没有办法在哪里工作?

我知道使用javascript按钮,通常有一种方法可以做到这一点。我只是不知道如何。

谢谢!

0 个答案:

没有答案