Имя нужного вам файла находится в заголовке URL. Поэтому попробуйте следующую функцию:
getURLFilename <- function(url){
require(stringi)
hdr <-paste(curlGetHeaders(url),collapse = '')
fname <- as.vector(stri_match(hdr,regex = '(?<=filename=\\").*(?=\\")'))
fname
}
Для указанного вами URL:
getURLFilename('https://journals.openedition.org/acrh/2908?file=1')
# [1] "ds219.xls"
Тогда в вашем цикле используйте:
file <- getURLFilename(url)
if (!file.exists(file)) download.file(url, file)