Programmatically Download CORINE Land Cover Seamless Vector Data with R
[This article was first published on theBioBucket*, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
Thanks to a helpful SO-Answer I was able to download all CLC vector data (43 zip-files) programmatically:Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.
require(XML) path_to_files <- "D:/GIS_DataBase/CorineLC/Seamless" dir.create(path_to_files) setwd(path_to_files) doc <- htmlParse("http://www.eea.europa.eu/data-and-maps/data/clc-2006-vector-data-version-2") urls <- xpathSApply(doc,'//*/a[contains(@href,".zip/at_download/file")]/@href') # function to get zip file names get_zip_name <- function(x) unlist(strsplit(x, "/"))[grep(".zip", unlist(strsplit(x, "/")))] # function to plug into sapply dl_urls <- function(x) try(download.file(x, get_zip_name(x), mode = "wb")) # download all zip-files sapply(urls, dl_urls) # function for unzipping try_unzip <- function(x) try(unzip(x)) # unzip all files in dir and delete them afterwards sapply(list.files(pattern = "*.zip"), try_unzip) # unlink(list.files(pattern = "*.zip"))
To leave a comment for the author, please follow the link and comment on their blog: theBioBucket*.
R-bloggers.com offers daily e-mail updates about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.
Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.