2016-11-28 36 views
1

我试图使用download.file函数下载文件。我正在使用的URL受密码保护。然而我的密码有多个特殊字符,它不会让我下载我的文件。有没有一种方法可以在不更改密码的情况下绕过此操作?使用download.file时,通过密码中的特殊字符

我使用的密码包含特殊字符“$”“@”

下面的例子和错误代码,我得到。

download.file("http://myusername:[email protected][email protected]?$format=json", myfile.json, method = "auto") 

“InternetOpenUrl中失败:‘服务器名称或地址无法解析’

+0

你什么错误? – nyedidikeke

+0

您能否详细说明“多个特殊字符”?你的意思是在Unicode /非ASCII? –

+0

多个特殊字符是$和@。他们在我的密码也是错误是在“InternetOpenUrl失败” – mannym

回答

1

尝试编码字符密码:

password <- "[email protected]$$sword" 
password <- URLencode(password, reserved=TRUE) # deal with @ and $ 

file.loc <- sprintf("http://myusername:%[email protected]?format=json", password) 
download.file(file.loc, ...) 
+0

完美作品 – mannym