2016-02-05 5 views
6

yahooクエリを使用して、緯度と経度で気象データを取得したいと考えています。このクエリは現在利用できません。クエリは次のとおりです。Yahoo天気緯度と経度によるクエリ

select * from weather.forecast where woeid in (SELECT woeid FROM geo.placefinder WHERE text="{lat},{lon}" and gflags="R") 

このクエリは新しいものか何かに変更されていますか?それとももう存在しなかったのですか?前回私がこのフォーマットを使用したのは約2ヶ月前だったし、うまくいきました。今はデータを取得できません。 YQLコンソールからの結果は以下の通りです:

{ 
"error": { 
    "lang": "en-US", 
    "description": "Tenant 'query_yahooapis_com' access to 'Resource [tenantName=query_yahooapis_com, type=TABLE, name=geo.placefinder, locatorType=FILE, url=/home/y/share/manhattan/application/tenantBundles/yql_query_yahooapis_com_manhattan_v2/YQL-INF/restdefs/geo.placefinder.xml, useUrl=false]' is denied." 
} 
} 

私はすでにこの記事を含め、いくつかの研究を行います。How to get Yahoo's woeid by location?

ヤフーはすでに天候を取得するため、この緯度経度クエリを終了していることというのは本当でしょうか?

答えて

16

this answerへの最新の回答によると、テーブルgeo.placesに切り替えてgflags="R"部分を削除する必要があります。 YQLコンソールで試してみましたが、動作しているようです:

select * from weather.forecast where woeid in (SELECT woeid FROM geo.places WHERE text="(latitude,longitude)") 
+0

こんにちは。返信ありがとうございます。あなたの答えはまだ同じ結果を生み出しているようです。私は本当にこのクエリがもう有効ではないと思います。 –

+0

同じ結果は得られません。どのようにあなたがそれを試したのかわかりませんが、私はちょうど試したとすべてうまく動作します。 [テストボタンを押すだけです(https://developer.yahoo.com/yql/console/#h=select+*+from+weather.forecast+where+woeid+in+(SELECT + woeid + FROM + geo.places + WHERE +テキスト%3D%22%7Blat%7D%2C%7Blon%7D%22)) – greg

+0

あなたが置いた正確な場所は何ですか、私は使用している緯度と経度を意味しますこのクエリのために?はい、私はすでにあなたのテストを試して、それは動作します。しかし、それはクエリに 'lat'と 'lon'だけを置くようです。 –