2013-11-14 9 views
5

Sto lavorando a un progetto di data mining e vorrei raccogliere dati meteorologici storici. Sono in grado di ottenere dati storici tramite l'interfaccia Web che forniscono a http://www.ncdc.noaa.gov/cdo-web/search. Ma vorrei accedere a questi dati in modo programmatico tramite un'API. Da quello che ho letto su StackOverflow questi dati dovrebbero essere di dominio pubblico, ma l'unico posto in cui sono riuscito a trovarlo è su servizi non gratuiti come Wunderground. Come posso accedere a questi dati gratuitamente?Dati meteo storici da NOAA

+0

possibile duplicato di [Come utilizzare l'API NOAA per interrogare i dati meteo passati per un dato insieme di coordinate] (http://stackoverflow.com/questions/18828890/how-to-use-the-noaa-api-to-query-past-weather-data-for-a-date-set-of-coordinate) – Andy

+0

Ottima domanda. Senza una api, ho semplicemente ripreso le strategie di raschiamento (rispettose). I dati NOAA sono una grande risorsa, ma richiede alcuni QA/QC. Controlla [questa risorsa] (https://beaumont.tamu.edu/climaticdata/WorldMap.aspx) relativo a [questo articolo] (http://www.sciencedirect.com/science/article/pii/S0168169909002348) – metasequoia

+0

Altro alternativa è usare la pagina [ftp] (http://www.ncdc.noaa.gov/data-access/quick-links#dsi-3505) per il GHCN-D – metasequoia

risposta

2

Per un elenco di tutte le API di servizio forniti dal National Climatic Data Center: http://www.ncdc.noaa.gov/cdo-web/webservices

La documentazione completa alle API che sostiene la pagina di ricerca che avete elencato: http://www.ncdc.noaa.gov/cdo-web/webservices/v2

richiede un token, e limiti a 1000 richieste al giorno. Se è necessario aumentare il limite per motivi legittimi, contattare http://www.ncdc.noaa.gov/customer-support.

Inoltre, per maggior uso scaricano ftp: ftp://ftp.ncdc.noaa.gov/pub/data/

+1

Ho problemi con il token, qui è la mia richiesta di arricciatura: 'curl -H" Autorizzazione: "http: // www.ncdc.noaa.gov/cdo-web/api/v2/datasets' dove' 'è il token che mi è stato inviato via email, ma sta restituendo l'errore '{" status ":" 400 "," message ":" Il parametro token è obbligatorio. "}' – azrosen92

+1

ho trovato un modo solo con 'curl()' come 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. '& limite =; http' $ limite) //.': //www.ncdc.noaa.gov/cdo-web/a PI/v2/dati DatasetId = GHCND & StationID = GHCND:? ZI000067964 & limite = 31'); \t \t \t \t \t curl_setopt ($ init, CURLOPT_HEADER, false); \t \t \t \t \t curl_setopt ($ init, CURLOPT_HTTPHEADER, array ('token: ')); \t \t \t \t \t curl_setopt ($ init, CURLOPT_RETURNTRANSFER, 1); ' –

+1

azrosen92:' ricciolo -H "token: " http://www.ncdc.noaa.gov/cdo-web/api/v2/datasets ' – Brian

Problemi correlati