2017-08-02 170 views
0

使用循環我有獨特的ids x urls一個df錯誤批處理HTTP狀態代碼測試中的R

library (httr) 

for (i in (1:nrow(df))) { 
    resp <- httr::GET(df$url[i]) 
    httpcode[i] <- status_code(resp) 
    httpstatus[i] <- http_status(resp)$reason 
} 

我想(一)發現status_code每一個URL,(B)找到http_status每一個URL,以及(c)將它們吐出到新列在同一df

問題:1.在下面的代碼,當我由實際索引號碼(例如I = 1)替換i,代碼工作。當我把它放在一個for循環,它使我有以下錯誤:

Error in curl::curl_fetch_memory(url, handle = handle) : 
    Couldn't resolve host name 
  • 如何使httpcodehttpstatus從對象轉換爲新列在同一df?謝謝
  • +0

    哦,非常感謝,這解決了第一個問題。 (但我也不得不從httpcode [i]和則httpStatus卸下I指數[1]。任何想法我怎麼能回到各自的URL的結果爲兩個新列在同一個DF? – Susie

    回答

    0
    out_df <- data.frame() 
    for (i in df$url) { 
        print(i) 
        resp <- httr::GET(i) 
        httpcode <- status_code(resp) 
        httpstatus <- http_status(resp)$reason 
        row <- c(i, httpcode, httpstatus) 
        out_df <- rbind(out_df, row) 
    } 
    
    df <- merge(df, out_df, by = 'url', all.x = TRUE) 
    
    +0

    打印(我)沒必要但將幫助您識別故障網址 – AidanGawronski

    +0

    謝謝艾丹我加的結果上面的回答的照片,現在我發現我有,因爲這個錯誤有NAS:6:。在'[< - factor'('* TMP *',RI值= 「WWW [網站名稱隱藏] .COM」):無效因子水平,NA產生---不知道如何解決這個問題 – Susie

    +0

    DF $網址< - as.character(DF $網址) – AidanGawronski