3

Yahoo クエリ言語を使用して Yahoo Weather で天気情報を取得する方法を見つけようとしています。

私はフランスのニースという都市に住んでいるので、次のクエリはエラーを返します。

select * from weather.forecast where location='Nice'

緯度と経度を調整したので、それらを YQL に渡して天気情報を返すにはどうすればよいですか? このサービスは全世界ですか、それとも米国のみですか?

4

1 に答える 1

4

代わりに、別の YQL データテーブルを使用する必要があります。私はこのクエリを試しましたが、うまくいきます:

SELECT * FROM weather.bylocation WHERE location='Nice' AND unit="c"

これは YQL コンソールです

unit="c"あなたがそれを望んでいると仮定して、摂氏を取得するために追加しました。そうでない場合は、「f」を使用します。

内部的には、weather.bylocationテーブルは次の 2 つのものを使用しています。

  1. 場所の「地球上識別子 ( woeid) のルックアップ、
  2. 次に、この ID の天気を検索します。

以下の表の内部を参照してください。

    <execute><![CDATA[
      default xml namespace ='http://where.yahooapis.com/v1/schema.rng'; 
      var x = y.query('select woeid from geo.places(1) where text="'+location+'"');
      var s = x.results;
      var woeid = s..woeid;
      var weather = y.rest('http://weather.yahooapis.com/forecastrss?w='+woeid+'&u='+unit).get().response;
      response.object = <weather>{weather}</weather>;
    ]]></execute>

緯度と経度の調整に関する 2 番目の質問について: それらを使用できるかどうかはわかりませんが、これはもう必要ないのではないでしょうか?

また、よく読んでください:

http://developer.yahoo.com/weather/

http://developer.yahoo.com/geo/geoplanet/guide/concepts.html

于 2011-01-12T00:50:14.773 に答える