2013-11-14 5 views
5

Я работаю над проектом по добыче данных, и мне бы хотелось собрать исторические данные о погоде. Я могу получить исторические данные через веб-интерфейс, который они предоставляют по адресу http://www.ncdc.noaa.gov/cdo-web/search. Но я хотел бы получить доступ к этим данным программным путем через API. Из того, что я читал в StackOverflow, эти данные должны быть общедоступными, но единственное место, где я смог найти это, - это несвободные сервисы, такие как Wunderground. Как я могу получить доступ к этим данным бесплатно?Исторические данные погоды от NOAA

+0

возможно дубликат [Как использовать API NOAA для запроса прошлых данных о погоде для заданного набора координат] (http://stackoverflow.com/questions/18828890/how-to-use-the-noaa-api-to-query-past-weather-data-for-a-given-set-of-coord) – Andy

+0

Большой вопрос. Без api я просто отказался от (уважительных) стратегий соскабливания. Данные NOAA являются отличным ресурсом, но требуют некоторого QA/QC. Проверьте [этот ресурс] (https://beaumont.tamu.edu/climaticdata/WorldMap.aspx), относящийся к [этой статье] (http://www.sciencedirect.com/science/article/pii/S0168169909002348) – metasequoia

+0

Другой альтернативой является использование страницы [ftp] (http://www.ncdc.noaa.gov/data-access/quick-links#dsi-3505) для GHCN-D – metasequoia

ответ

2

Список всех интерфейсов услуг, предоставляемых Национальным центром климатических данных: http://www.ncdc.noaa.gov/cdo-web/webservices

Полная документация к API, который примыкающим страницу поиска вы перечислили: http://www.ncdc.noaa.gov/cdo-web/webservices/v2

требует маркер, и ограничения на 1000 запросов в день. Если вам нужен предел, увеличенный по законным причинам, свяжитесь с http://www.ncdc.noaa.gov/customer-support.

Кроме того, для массового использования загрузки FTP: ftp://ftp.ncdc.noaa.gov/pub/data/

+1

У меня возникают проблемы с токеном, здесь это мой запрос на завивание: 'curl -H" Авторизация: "http: // www.ncdc.noaa.gov/cdo-web/api/v2/datasets' где' '- это токен, который был отправлен мне по электронной почте, но он возвращает ошибку '{" status ":" 400 "," message ":" Требуется параметр токена. "}' – azrosen92

+1

Я нашел способ с 'curl()' like this-> 'curl_setopt ($ init, CURLOPT_URL, 'http://www.ncdc.noaa.gov/cdo-web/api/v2/data?datasetid=GHCND&startdate='.$startDate.'&enddate='.$endDate.'&datatypeid=TMAX&datatypeid=TMIN&stationid=GHCND : '$ CITY_ID. & предел =; HTTP' $ предел) //.': //www.ncdc.noaa.gov/cdo-web/a пи/v2/данные datasetid = GHCND & stationid = GHCND: ZI000067964 & предел = 31'); \t \t \t \t \t curl_setopt ($ init, CURLOPT_HEADER, false); \t \t \t \t \t curl_setopt ($ первонач CURLOPT_HTTPHEADER, массив ('маркер: ')); \t \t \t \t \t curl_setopt ($ первонач, CURLOPT_RETURNTRANSFER, 1); ' –

+1

azrosen92:' локон -H "Маркер: " http://www.ncdc.noaa.gov/cdo-web/api/v2/datasets ' – Brian

Смежные вопросы