2016-10-24 1 views
0

Schleife zuerst Ich kratze eine bestimmte Anzahl von URLs von einer Website und sammeln sie in einem Datenrahmen. Jedoch möchte ich die URLs, die ich gesammelt habe, in den Datenrahmen einbinden. Das ist mein Code:Ich möchte über einen Datenrahmen mit URLs mit rvest in r

library(rvest)library(dplyr) 
library(XLConnect) 
##########GET URLS################################################################################### 
urls <- read_html("http://www.klassiekshop.nl/labels/labels-a-e/brilliant-classics/?limit=all") 

urls <- urls %>% 
    html_nodes(".product-name a") %>% 
    html_attr("href") %>% 
    as.character() 

url <- as.data.frame(urls) 
as.character(url$urls) 


#########EXTRACT URLS FROM DATAFRAME URLS############################################################ 
#########CREATE DATAFRAME############################################################################ 
EAN <- 0 
price <- 0 

df <- data.frame(EAN, price) 

#########GET DATA#################################################################################### 
pricing_data <- for(i in urls){ 

site <-read_html(i) 
print(i) 
    stats <- data.frame(EAN =site %>% html_node("b") %>% html_text() , 
       price =site %>% html_node(".price") %>% html_text() , 
       stringsAsFactors=FALSE) 
data <-rbind(df,stats) 
} 

Beim Debuggen der Schleife läuft über die URLs. Es sammelt jedoch nicht die Daten. Weiß jemand, wie man die Daten von der Seite bekommt?

Danke!

Antwort

0

Es ist, weil du bist rbinddf zu stats ing ... aber man kann nie df ändern ... Ich denke, Sie die letzte Zeile des Codes geändert werden soll: df <-rbind(df,stats)