2017-08-21 164 views
0

我已經在亞馬遜網站上的數據存儲訪問過的CSV和讀入R作爲一個data.frame成一個對象「DataAmazon」網頁抓取了多個網站

DataAmazon <- read.csv("URLs.csv", header = TRUE, comment.char = "", 
stringsAsFactors = FALSE) 

head(DataAmazon,2) #Top 2 rows of data  
https://www.amazon.co.uk/gp/product/B01L8PLHTI/ref=s9_acsd_hps_bw_c_x_1_w?pf_rd_m=A3P5ROKL5A1OLE&pf_rd_s=merchandised-search-6&pf_rd_r=Z4049X520KCMMB3CNRVG&pf_rd_r=Z4049X520KCMMB3CNRVG&pf_rd_t=101&pf_rd_p=83565b89-9e07-44df-a55a-95a45c9b49b5&pf_rd_p=83565b89-9e07-44df-a55a-95a45c9b49b5&pf_rd_i=509908031 

https://www.amazon.co.uk/United-Colors-Benetton-2OZ1538Q0-Jacket/dp/B01IP45CAK/ref=sr_1_1?m=A3P5ROKL5A1OLE&s=clothing&ie=UTF8&qid=1503313547&sr=1-1&nodeID=1730756031&psd=1 

我想提取網頁標題從數據幀的第1個要素如下

url <- DataAmazon[1,] 

Amazon_Normal_Text1 <- url %>%read_html() %>%html_nodes("title") %>% html_text() 

我最初嘗試使用for循環

for (i in 1:nrow(DataAmazon)) 
{ 
    url <- DataAmazon[i, ] 
    Amazon_Normal_Text1 <- url %>%read_html() %>%html_nodes("title") %>% html_text() 
} 

如何我可以ü se應用函數系列循環遍歷包含大約100行URL的csv文件並將輸出保存爲另一個文件。

+0

刮亞馬遜是侵犯他們的T&C的/服務類型。 – hrbrmstr

回答

1

您可以創建一個不正是代碼的最後塊

amazonTitle <- function(x){ 
    x %>%read_html() %>% html_nodes("title") %>% html_text() 
} 

然後用apply功能做以下的功能:

apply(DataAmazon, 1, amazonTitle)