Yahoo Tiempo API WOEID recuperación


Estoy creando una aplicación (PHP) que toma los datos meteorológicos de yahoo del feed RSS gratuito y los correlaciona con un hex de color basado en los datos recuperados del feed RSS. El problema que estoy teniendo es encontrar una manera de agarrar el código de ubicación o WOEID sin hacerlo manualmente.

La API de Yahoos envía un feed RSS siempre que proporcione un WOEID - > http://weather.yahooapis.com/forecastrss?w=4097

Hay una forma ética de hacer esto? Mi conocimiento de principiante me dice que tengo que escriba un script que busque yahoo usando el término y tome el primer WOEID,pero asumiría que yahoo no quiere scripts haciendo esto y parece complicado... Si no, ¿hay alguna API alternativa que me lo haga más fácil?

Gracias!

Author: askon, 2009-12-01

3 answers

¿Por qué no usar Yahoo! Servicio de GeoPlanet para resolver un lugar a un WOEID? ¿O usar el servicio YQL para acceder a GeoPlanet a través de su tabla?

http://where.yahooapis.com/v1/places.q('Barrie CA')?appid=[yourappidhere]

O

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

No hay necesidad de raspar.

Salud

G

(Divulgación; Trabajo para Yahoo! y soy parte del grupo detrás de WOEIDs y GeoPlanet)

 65
Author: Gary Gale,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2009-12-01 09:56:57

Tengo información útil de: http://developer.yahoo.com/geo/geoplanet /

Y

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

  1. Encuentra el WOEID de un hito significativo: http://where.yahooapis.com/v1/places.q('sydney%20opera%20house')?appid=[yourappidhere]

  2. Resolver un WOEID a un lugar: http://where.yahooapis.com/v1/place/2507854?appid=[yourappidhere]

  3. Encuentra el WOEID de un lugar específico: http://where.yahooapis.com/v1/places.q('northfield%20mn%20usa')?appid=[yourappidhere]

  4. Obtener una gama de WOEIDs que coinciden con un lugar dado, ordenado por el más probable: http://where.yahooapis.com/v1/places.q('springfield');start=0;count=5?appid=[yourappidhere]

  5. Encuentra el padre de un WOEID dado (y devuelve un registro detallado): http://where.yahooapis.com/v1/place/638242/parent?select=long&appid=[yourappidhere]

  6. Devuelve el nombre de lugar para un WOEID dado en un idioma específico (donde existe): http://where.yahooapis.com/v1/places.q ('usa')?lang=fr&appid=[yourappidhere]

  7. Para obtener la representación de un lugar en formato JSON: http://where.yahooapis.com/v1/place/2487956?format=json&appid=[yourappidhere]

  8. Para obtener una lista de geografías que rodean a un WOEID específico: http://where.yahooapis.com/v1/place/12795711/neighbors?appid=[yourappidhere]

 5
Author: NguyenDat,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-05-06 17:40:13

Yahoo! Geo Technologies se complace en anunciar la disponibilidad del soporte de PlaceFinder en YQL. El geo.la tabla placefinder permite a los usuarios realizar solicitudes a PlaceFinder a través de consultas YQL. La nueva tabla proporciona varias formas diferentes de acceder a PlaceFinder. Se puede obtener una descripción de las solicitudes y parámetros soportados usando http://query.yahooapis.com/v1/public/yql?q...&appid=test . Aquí hay algunos ejemplos:

Geocodificación de una dirección (1600 Pennsylvania Ave, Washington, DC) usando formato de entrada de forma libre:

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

Geocodificación de una dirección (701 First Ave, Sunnyvale, CA 94089) utilizando el formato de entrada multilínea:

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

Geocodificación de un código de aeropuerto (SFO):

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

Geocodificación de un punto de interés (POI) en francés:

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

Geocodificación inversa usando coordenadas geográficas:

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

Geocodificación de una dirección (701 First Ave, Sunnyvale, CA 94089) utilizando el formato de entrada analizado:

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

Determinar el valor más cercano cruce calles y zona horaria para una dirección:

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

Este ejemplo ilustra la capacidad de YQL para seleccionar solo los campos especificados de la respuesta

 1
Author: OnlyMAJ,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-07-19 13:22:19