Многие веб-сайты предоставляют данные для потребления своими пользователями. Например, Всемирная организация здравоохранения (ВОЗ) предоставляет отчеты о медицинской и медицинской информации в виде файлов CSV, txt и XML. Используя программы R, мы можем программно извлекать конкретные данные с таких сайтов. Некоторые пакеты в R, которые используются для сбора данных из Интернета, — «RCurl», XML »и« stringr ». Они используются для подключения к URL-адресам, определения необходимых ссылок для файлов и загрузки их в локальную среду.
Установить пакеты R
Следующие пакеты необходимы для обработки URL-адресов и ссылок на файлы. Если они недоступны в вашей среде R, вы можете установить их с помощью следующих команд.
install.packages("RCurl") install.packages("XML") install.packages("stringr") install.packages("plyr")
Входные данные
Мы посетим данные о погоде в URL и загрузим файлы CSV с использованием R за 2015 год.
пример
Мы будем использовать функцию getHTMLLinks () для сбора URL-адресов файлов. Затем мы будем использовать функцию download.file () для сохранения файлов в локальной системе. Поскольку мы будем применять один и тот же код снова и снова для нескольких файлов, мы создадим функцию, которая будет вызываться несколько раз. Имена файлов передаются в качестве параметров в виде объекта списка R в эту функцию.
# Read the URL. url <- "http://www.geos.ed.ac.uk/~weather/jcmb_ws/" # Gather the html links present in the webpage. links <- getHTMLLinks(url) # Identify only the links which point to the JCMB 2015 files. filenames <- links[str_detect(links, "JCMB_2015")] # Store the file names as a list. filenames_list <- as.list(filenames) # Create a function to download the files by passing the URL and filename list. downloadcsv <- function (mainurl,filename) { filedetails <- str_c(mainurl,filename) download.file(filedetails,filename) } # Now apply the l_ply function and save the files into the current R working directory. l_ply(filenames,downloadcsv,mainurl = "http://www.geos.ed.ac.uk/~weather/jcmb_ws/")
Проверить загрузку файла
После запуска приведенного выше кода вы можете найти следующие файлы в текущем рабочем каталоге R.