r - 如何使用 R 下载 uri 数据:文本文件?
问题描述
我正在尝试使用 R 下载我认为所谓的 URI 数据:文本文件。“URL”是这种形式:
URL <-“数据:文本/csv;charset=utf8,Supply%2001%2F02%2F2020%2C0%3A00%2C0%3A05%2C0%3A10%2C0%3A15%2C0...”
接下来是数百个字符。当我在网络浏览器中输入“URL”并按下回车键时,所需的 CSV 文件会毫无问题地下载。但是,当我尝试在上述字符串上使用类似 download.file 或 curl_download 的内容时,我收到如下错误:
curl_download(URL, destfile = "test1234.csv") 中的错误:端口号以 't' 结尾
关于如何下载 csv 数据的任何见解:使用 R 这样的文件?谢谢!
如果有任何用处,我试图下载的文件粘贴在下面。我必须首先将字符串保存为 .txt 文件,然后使用 read_file 导入该 .txt 文件,以便将其作为字符串存储在 R 中。
解决方案
数据 URL 并不是真正的普通 URL,它包含文本内的所有数据,而不是指向不同位置的数据。它由两部分组成:“标题”,然后是数据本身。标头由“data:text/csv;charset=utf8”组成,然后是数据,但它是 HTML(或 URL)编码的。您可以通过删除标题、解码值,然后将文本读取为 CSV 文件来读取数据read.csv
。例如:'
read.csv(text=URLdecode(gsub("^data:text/csv;charset=utf8,","", URL)),
check.names = FALSE)
推荐阅读
- python - 如何根据预先定义的行和列值从 DataFrame 中获取值
- javascript - 即使正在通过基本身份验证,也会显示输入用户名和密码的警报
- reactjs - 使用事件侦听器反应玩笑测试 useEffect
- firebase - Firebase 实时数据库访问
- swift - Swift 如何获得 3D 文件的比例值?
- reactjs - react-leaflet 限制屏幕尺寸
- ios - 防止 Proxyman 捕获 HTTP/HTTPS 请求
- python - 获取连续日期的初始和结束 Numpy Python
- python - 找不到mysql模块
- r - 导入不带分隔符的 .DAT 文件