首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用curl命令获取api数据

使用curl命令获取api数据
EN

Stack Overflow用户
提问于 2022-03-21 11:24:04
回答 1查看 1.6K关注 0票数 0

我试图使用curl从公共api获取一些数据:

代码语言:javascript
运行
复制
curl --request GET 'https://api.openweathermap.org/data/2.5/weather?lat=37.3565982&lon=-121.9689848&units=imperial' \
--header 'X-Api-Key: x-api-‘key \
--data 'output_format=csv' \
> save_file.csv

如果我在终端中运行命令,返回输出,而且一切都很正常,但是如果我试图添加一个额外的参数,以.csv格式下载结果,正在生成文件,但里面的格式是错误的,我的意思是不是以表格式添加,而是更像对象数组( [{}, {}, {}] )等等。

是否可以运行curl命令并以csv格式获取数据?

EN

回答 1

Stack Overflow用户

发布于 2022-03-21 11:33:03

--data是如何将正文数据添加到POST请求中的。你提出了一个GET请求。

您正在使用的are服务的api文档如下:

模式可选响应格式。可能的值是xml和html。如果不使用模式参数,默认情况下格式是JSON。了解更多

因此,要从服务器返回JSON以外的内容,需要将mode=something放在查询字符串中,只有XML和HTML是选项。

这不是output_format

它不会进入身体。

CSV不是一种选择。

如果要将数据转换为CSV格式,则需要在本地进行转换。文档中描述的数据格式看起来并不适合CSV描述的2D数据结构,因此您必须就如何转换它做出决定。

您已经标记了这个javascript,这样您就可以将curl的输出输送到一个使用Node.js运行的程序中,这个解析JSON可以根据需要对其进行重构,然后使用像帕帕帕这样的模块将其转换为JSON。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71556828

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档