curl_download: Download file to disk

View source: R/download.R

curl_downloadR Documentation

Download file to disk


Libcurl implementation of C_download (the "internal" download method) with added support for https, ftps, gzip, etc. Default behavior is identical to download.file, but request can be fully configured by passing a custom handle.


curl_download(url, destfile, quiet = TRUE, mode = "wb", handle = new_handle())



A character string naming the URL of a resource to be downloaded.


A character string with the name where the downloaded file is saved. Tilde-expansion is performed.


If TRUE, suppress status messages (if any), and the progress bar.


A character string specifying the mode with which to write the file. Useful values are "w", "wb" (binary), "a" (append) and "ab".


a curl handle object


The main difference between curl_download and curl_fetch_disk is that curl_download checks the http status code before starting the download, and raises an error when status is non-successful. The behavior of curl_fetch_disk on the other hand is to proceed as normal and write the error page to disk in case of a non success response.

For a more advanced download interface which supports concurrent requests and resuming large files, have a look at the multi_download function.


Path of downloaded file (invisibly).

See Also

Advanced download interface: multi_download


# Download large file
## Not run: 
url <- ""
tmp <- tempfile()
curl_download(url, tmp)

## End(Not run)

curl documentation built on Oct. 2, 2023, 5:06 p.m.