微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用 Requests 从虚拟路口 API 获取天气数据

如何解决使用 Requests 从虚拟路口 API 获取天气数据

我正在尝试从 API 访问历史天气数据。我从这里获得了 API 密钥:https://www.visualcrossing.com/weather/weather-data-services#/timeline

我正在尝试此操作,但一直收到错误 404。我不确定这是因为 API 问题还是我的代码有问题。

import requests
r = requests.get("https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London,UK/2021-01-01/2021-03-28?key=AXSSS")
print(r)

文档:https://www.visualcrossing.com/resources/documentation/weather-api/timeline-weather-api/

如何获取数据?

解决方法

我测试了您提供的网站并创建了一个帐户和api密钥以获取伦敦是否有数据,您也可以使用它

代码:

import requests

r = requests.get("https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London?unitGroup=metric&key=PPKBBJ7637X5SNDUG6HZA23X7")

print(r)

输出:

<Response [200]>

现在你也可以通过 json() 方法访问数据了:

print(r.json())

输出是如此巨大,但您的问题是两件事:

1-API 密钥不正确(我测试过) 2-您应该购买高级计划

获取日期范围的网址将如下所示:

https://weather.visualcrossing.com/VisualCrossingWebServices/rest/services/timeline/London/2021-1-1/2021-1-5?unitGroup=us&key=PPKBBJ7637X5SNDUG6HZA23X7

和您提供的日期范围,每个请求的行太多,您应该购买高级计划

否则你会在他们自己的网站上看到这个错误:

Your plan allows up to 100 rows per request. This query will return (yyy) rows. Please smaller date range or fewer locations.

Our paid plans offer increased query limits

如果您不想支付付费计划,您可以使用此链接使用 github 公共 api,很多免费且无需 api 密钥您可以使用

Github public apis

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。