哪个 R 包提供了类似于 pythons urllib 的功能
which R package provides functionality similar to pythons urllib
我的任务是将使用 python urllib
的 python 代码片段移植到 R。
这是完整的 python 代码:
import urllib.parse
import urllib.request
url = "https://www.uniprot.org/uploadlists/"
params = {
"from": "ACC+ID",
"to": "ENSEMBL_ID",
"format": "tab",
"query": "P40925 P40926 O43175 Q9UM73 P97793"
}
data = urllib.parse.urlencode(params)
data = data.encode("utf-8")
req = urllib.request.Request(url, data)
with urllib.request.urlopen(req) as f:
response = f.read()
print(response.decode("utf-8"))
我不热衷于使用 paste
和 paste0
在 R 中手动构建 url。
我找到的是 R urltools
包。
但它对 url 没有帮助 - 像 urllib.parse.urlencode
那样对数据进行编码。
用于重新实现 python 代码的 R 包是什么?或者我应该使用 reticulate
?
谢谢
我认为 httr 应该完成工作:
url <- "https://www.uniprot.org/uploadlists/"
params = list(
from = "ACC+ID",
to = "ENSEMBL_ID",
format = "tab",
query = "P40925 P40926 O43175 Q9UM73 P97793"
)
r <- httr::POST(url, body = params, encode = "form")
cat(httr::content(r))
#> No encoding supplied: defaulting to UTF-8.
#> From To
#> P40925 ENSG00000014641
#> P40926 ENSG00000146701
#> O43175 ENSG00000092621
#> Q9UM73 ENSG00000171094
#> P97793 ENSMUSG00000055471
由 reprex package (v0.3.0.9000)
创建于 2019-09-02
我的任务是将使用 python urllib
的 python 代码片段移植到 R。
这是完整的 python 代码:
import urllib.parse
import urllib.request
url = "https://www.uniprot.org/uploadlists/"
params = {
"from": "ACC+ID",
"to": "ENSEMBL_ID",
"format": "tab",
"query": "P40925 P40926 O43175 Q9UM73 P97793"
}
data = urllib.parse.urlencode(params)
data = data.encode("utf-8")
req = urllib.request.Request(url, data)
with urllib.request.urlopen(req) as f:
response = f.read()
print(response.decode("utf-8"))
我不热衷于使用 paste
和 paste0
在 R 中手动构建 url。
我找到的是 R urltools
包。
但它对 url 没有帮助 - 像 urllib.parse.urlencode
那样对数据进行编码。
用于重新实现 python 代码的 R 包是什么?或者我应该使用 reticulate
?
谢谢
我认为 httr 应该完成工作:
url <- "https://www.uniprot.org/uploadlists/"
params = list(
from = "ACC+ID",
to = "ENSEMBL_ID",
format = "tab",
query = "P40925 P40926 O43175 Q9UM73 P97793"
)
r <- httr::POST(url, body = params, encode = "form")
cat(httr::content(r))
#> No encoding supplied: defaulting to UTF-8.
#> From To
#> P40925 ENSG00000014641
#> P40926 ENSG00000146701
#> O43175 ENSG00000092621
#> Q9UM73 ENSG00000171094
#> P97793 ENSMUSG00000055471
由 reprex package (v0.3.0.9000)
创建于 2019-09-02