我为每位代表下载了一张照片。总共有513张照片(但我托管了271张照片)。每张照片都用副ID命名。我想将照片名称更改为代理人的名字。这意味着“ 66179.jpg”文件将被命名为“ norma-ayub.jpg”。
我有一列包含ID(“ uri”)及其名称(“ name_lower”)。我试图用download.file()的“ destfile”运行代码,但它仅接收一个字符串。我找不到如何使用file.rename()。
Rename_r_to_R仅更改文件扩展名。
我是使用R的初学者。
CSV文件: https://gist.github.com/gabrielacaesar/3648cd61a02a3e407bf29b7410b92cec
照片: https://github.com/gabrielacaesar/studyingR/blob/master/chamber-of-deputies-17jan2019-files.zip (不必下载ZIP文件;运行下面的代码时,您也可以获得照片,但是下载它们需要一些时间)
deputados <- fread("dep-legislatura56-14jan2019.csv")
i <- 1
while(i <= 514) {
tryCatch({
url <- deputados$uri[i]
api_content <- rawToChar(GET(url)$content)
pessoa_info <- jsonlite::fromJSON(api_content)
pessoa_foto <- pessoa_info$dados$ultimoStatus$urlFoto
download.file(pessoa_foto, basename(pessoa_foto), mode = "wb")
Sys.sleep(0.5)
}, error = function(e) return(NULL)
)
i <- i + 1
}
答案 0 :(得分:3)
我下载了您提供的文件,并将其直接读入java.sql.SQLSyntaxErrorException: ORA-01722: invalid number
或分别将它们解压缩到新文件夹中:
R
然后,我使用df <- data.table::fread(
"https://gist.githubusercontent.com/gabrielacaesar/3648cd61a02a3e407bf29b7410b92cec/raw/1d682d8fcdefce40ff95dbe57b05fa83a9c5e723/chamber-of-deputies-17jan2019",
sep = ",",
header = TRUE)
download.file("https://github.com/gabrielacaesar/studyingR/raw/master/chamber-of-deputies-17jan2019-files.zip",
destfile = "temp.zip")
dir.create("photos")
unzip("temp.zip", exdir = "photos")
获取所有照片的文件名,将它们与数据集匹配并重命名照片。这运行得非常快,最后一位将报告文件重命名是否成功。
list.files