【发布时间】:2011-02-15 07:32:20
【问题描述】:
我正在使用yahoo weather api 获取天气信息
这将返回一个 xml 输出。
我想以 JSON 格式获取它。我怎样才能得到这个 JSON?
【问题讨论】:
我正在使用yahoo weather api 获取天气信息
这将返回一个 xml 输出。
我想以 JSON 格式获取它。我怎样才能得到这个 JSON?
【问题讨论】:
我建议使用 YQL 并请求 JSON 输出。您引用的链接是 Yahoo 的天气 RSS 提要。
【讨论】:
select * from weather.forecast where woeid in (SELECT woeid FROM geo.placefinder WHERE text="34.0485508,-84.22675029999999" and gflags="R")
http://weather.yahooapis.com/forecastjson?w=2502265
只需将 URL 中的 forecastrss 替换为 forecastjson。
我看到一个缺点:没有为天气预报返回 weather-code。
2014-06 更新:这曾经有效,但自 2012-10 以来似乎已经消失(另请参阅 https://developer.yahoo.com/forum/YQL/-/1349591762366-e0f8ad94-f599-49fe-bddb-fe3cd0180dea)
【讨论】:
forecastrss 的文档。奇怪。
根据http://weather.yahooapis.com/forecastrss 的文档,rss 响应是 xml。
天气 RSS 提要是一个 XML 符合 RSS 2.0 的文档 规格。 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
输入你自己所在位置的经纬度来查找你所在位置的天气,希望这会有所帮助。
【讨论】: