我正在使用yahoo 天气 api来获取天气信息
这将返回一个 xml 输出。
我想以 JSON 格式获取它。我怎样才能得到这个作为 JSON?
我建议使用 YQL 并请求 JSON 输出。您引用的链接是雅虎的天气 RSS 提要。
http://weather.yahooapis.com/forecastjson?w=2502265
只需在 URL 中替换forecastrss
为。forecastjson
我看到一个缺点:没有天气code
- 为预测返回。
2014-06 更新:这曾经有效,但自 2012-10 以来似乎已经消失(另请参阅https://developer.yahoo.com/forum/YQL/-/1349591762366-e0f8ad94-f599-49fe-bddb-fe3cd0180dea)
根据http://weather.yahooapis.com/forecastrss上的文档,rss 响应是 xml。
Weather RSS 提要是符合 RSS 2.0 规范的 XML 文档。RSS 是一种 XML 文档,其中包含一个表示提要的通道元素、几个包含有关提要本身的元数据的元素,以及一个或多个描述提要中各个项目的项目元素。
因此,您不会得到 JSON 格式的响应
如果您正在寻找 JSON天气 API,我有一个建议给您!
我在 mashape 上提供了一个Weather API ,他们有一个可以使用的简单 PHP SDK。这个 api 使用起来非常简单,因为我们使用当今可用的很酷的标准,例如 JSON 和 REST,而我们的竞争对手仍然使用旧的 SOAP/XML 系统。
谈到数据质量 Metwit(我的“公司”)作为一个众包平台而诞生,用于收集来自真人的实时天气报告。在超过一万用户开始使用我们的应用程序并发送大量报告后,我们决定通过我们的 API 发布这些宝贵的报告。
我们还充当多个难以解析的预测来源(如 NOAA)的单一网关,并且我们正在使用来自现有社交网络的照片、推文等社交数据来增强它们。
如果你喜欢它,请在mashape上试一试!
经过几次搜索后,我发现 yahoo 天气 api 最适合我,因为它是我真正需要的。从经纬度获取天气数据
在 XML 中(默认)
http://query.yahooapis.com/v1/public/yql?q=select * from weather.forecast where woeid in (SELECT woeid FROM geo.places WHERE text="({28.3949},{84.1240})")
JSON 格式
http://query.yahooapis.com/v1/public/yql?q=select * from weather.forecast where woeid in (SELECT woeid FROM geo.places WHERE text="({28.3949},{84.1240})")&format=json
输入您自己所在位置的经纬度来查找您所在位置的天气,希望这会有所帮助。