首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Yahoo Weather API WOEID检索

Yahoo Weather API WOEID检索
EN

Stack Overflow用户
提问于 2009-12-01 05:53:35
回答 3查看 33.6K关注 0票数 29

我正在创建一个应用程序(PHP),它从免费的RSS提要中获取雅虎天气数据,并根据从RSS提要中检索到的数据将其与颜色十六进制相关联。我遇到的问题是找到一种方法来获取位置代码或WOEID,而不需要手动操作。

只要你提供一个WOEID -> http://weather.yahooapis.com/forecastrss?w=4097,Yahoos API就会发回一个RSS feed。

有没有一种合乎道德的方式去做呢?我的初学者经验告诉我,我必须写一个脚本,用这个词搜索雅虎,然后抓取第一个WOEID,但我认为雅虎不想要脚本做这件事,而且它似乎过于复杂了……如果没有,有没有其他的API可以让我更轻松呢?

谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-12-01 17:56:57

为什么不直接使用Yahoo!GeoPlanet服务将一个地点解析为一个WOEID?或者使用YQL服务通过它的表访问GeoPlanet?

代码语言:javascript
复制
http://where.yahooapis.com/v1/places.q('Barrie CA')?appid=[yourappidhere]

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.places%20where%20text%3D%22Barrie%20CA%22&format=xml

不需要刮擦。

干杯

G

(披露一下,我为雅虎工作!我是WOEID和GeoPlanet背后的小组的一员)

票数 65
EN

Stack Overflow用户

发布于 2011-05-07 01:33:57

我从http://developer.yahoo.com/geo/geoplanet/获得了一些有用的信息:

http://developer.yahoo.com/geo/geoplanet/guide/api-reference.html#api-countries

查找重要地标的WOEID:http://where.yahooapis.com/v1/places.q('sydney%20opera%20house')?appid=yourappidhere

  • Resolve a WOEID to a

  • http://where.yahooapis.com/v1/places.q('northfield%20mn%20usa')?appid=yourappidhere

  • Obtain
  1. of a specific place:http://where.yahooapis.com/v1/places.q(‘northfield%20mn%20usa’)?appid=yourappidhere
  2. Obtain匹配给定地点的WOEID范围,按最可能的顺序排序:http://where.yahooapis.com/v1/places.q('springfield');start=0;count=5?appid=yourappidhere
  3. Find给定WOEID的父级(并返回详细记录):http://where.yahooapis.com/v1/place/638242/parent?select=long&appid=[yourappidhere]
  4. Return给定WOEID的特定语言(存在的地方)的地名:http://where.yahooapis.com/v1/places.q('usa')?lang=fr&appid=yourappidhere
  5. To获取JSON格式的地点表示:http://where.yahooapis.com/v1/place/2487956?format=json&appid=[yourappidhere]
  6. To获取与特定WOEID相邻的地理位置列表:http://where.yahooapis.com/v1/place/12795711/neighbors?appid=[yourappidhere]
票数 5
EN

Stack Overflow用户

发布于 2013-07-19 21:22:20

雅虎!Geo Technologies很高兴地宣布在YQL中提供PlaceFinder支持。YQL表允许用户通过geo.placefinder查询向PlaceFinder发出请求。新表提供了几种不同的访问PlaceFinder的方法。可以使用http://query.yahooapis.com/v1/public/yql?q...&appid=test检索所支持的请求和参数的描述。这里有几个例子:

使用自由格式输入格式对街道地址(华盛顿特区宾夕法尼亚大道1600)进行地理编码:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.placefinder%20where%20text%3D%221600%20Pennsylvania%20Ave%2C%20Washington%2C%20DC%22&appid=test

使用多行输入格式对街道地址(加利福尼亚州森尼维尔第一大道701号,邮编94089)进行地理编码:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.placefinder%20where%20line1%3D%22701%20First%20Ave%22%20and%20line2%3D%22Sunnyvale%2C%20CA%2094089%22&appid=test

对机场代码(SFO)进行地理编码:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.placefinder%20where%20text%3D%22sfo%22&appid=test

用法语对兴趣点(POI)进行地理编码:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.placefinder%20where%20text%3D%22Eiffel%20Tower%22%20and%20lang%3D%22fr%22&appid=test

使用地理坐标进行反向地理编码:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.placefinder%20where%20text%3D%2237.416275%2C%20-122.025092%22%20and%20gflags%3D%22R%22&appid=test

使用解析的输入格式对街道地址(701 First Ave,Sunnyvale,CA 94089)进行地理编码:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20geo.placefinder%20where%20house%3D%22701%22%20and%20street%3D%22First%20Ave%22%20and%20city%3D%22Sunnyvale%22%20and%20state%3D%22CA%22%20and%20postal%3D%2294089%22&appid=test

为地址确定最近的十字路口和时区:

代码语言:javascript
复制
http://query.yahooapis.com/v1/public/yql?q=select%20line1%2C%20line2%2C%20line3%2C%20line4%2C%20cross%2C%20timezone%20from%20geo.placefinder%20where%20text%3D%22701%20First%20Ave%2C%20Sunnyvale%2C%20CA%22%20and%20flags%3D%22T%22%20and%20gflags%3D%22C%22&appid=test

此示例演示了仅从响应中选择指定字段的YQL功能

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

https://stackoverflow.com/questions/1822650

复制
相关文章

相似问题

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