2016-02-05 2 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?

Правда ли, что Yahoo уже прекратить эту широту долготу запрос для выборки погода?

ответ

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 + text% 3D% 22% 7Blat% 7D% 2C% 7Blon% 7D% 22)) – greg

+0

Могу я узнать, какое точное место вы ставите, я имею в виду широту и долготу, которые вы используете для этого запроса? да, я уже пробовал ваш тест, и он работает. но кажется, что вы только поместили 'lat' и 'lon' в запрос. –