如何在R中解析和构建具有多个值参数的URL查询字符串
有没有一种简单的方法可以在R中解析和构建具有多个值参数的URL查询字符串 我期待着类似的事情如何在R中解析和构建具有多个值参数的URL查询字符串,r,url,query-string,httr,R,Url,Query String,Httr,有没有一种简单的方法可以在R中解析和构建具有多个值参数的URL查询字符串 我期待着类似的事情 myqueryString <- parse_url("http://www.mysite.com/?a=1&a=2&b=val")$query myqueryString $a [1] 1 2 $b [1] "val" 及 我知道我可以使用parse()+eval()返回a,但对可以自由转储到URL的代码进行评估看起来相当不安全。 有什么建议吗 查看这两种参数列
myqueryString <- parse_url("http://www.mysite.com/?a=1&a=2&b=val")$query
myqueryString
$a
[1] 1 2
$b
[1] "val"
及
我知道我可以使用parse()
+eval()
返回a
,但对可以自由转储到URL的代码进行评估看起来相当不安全。
有什么建议吗 查看这两种参数列表格式之间的转换是否有效:
mergeUrlArgs <- function(x) sapply(unique(names(x)), function(z) unlist(x[names(x) == z], use.names=FALSE), simplify=FALSE)
expandUrlArgs <- function(x) structure(do.call(c, lapply(x, function(z) as.list(z))), names=rep(names(x), sapply(x, length)))
mergeUrlArgs您可以将parse_url
的结果“折叠”为您期望的结果<代码>x
parse_url("http://www.mysite.com/?a=1&a=2&b=val")$query
$a
[1] "1"
$a
[1] "2"
$b
[1] "val"
builtURL <- build_url(urlElements)
builtURL
[1] "http:///www.mysite.com/?a=c%281%2C%202%29&b=val"
parse_url(builtURL)$query
$a
[1] "c(1, 2)"
$b
[1] "val"
mergeUrlArgs <- function(x) sapply(unique(names(x)), function(z) unlist(x[names(x) == z], use.names=FALSE), simplify=FALSE)
expandUrlArgs <- function(x) structure(do.call(c, lapply(x, function(z) as.list(z))), names=rep(names(x), sapply(x, length)))