cancel
Showing results for 
Search instead for 
Did you mean: 
Reply
Frequent Visitor

No se pueden consultar los datos meteorológicos históricos de la NOAA de las estaciones meteorológicas

Hola a todos,

Para un proyecto en marcha, estoy tratando de extraer datos históricos de varias estaciones meteorológicas de la NOAA y me gustaría ponerlos en una base de datos de Power BI. Mi principal objetivo es extraer datos de las principales ciudades del noreste de EE. UU., y mostrar las temperaturas medias diarias de los últimos años (digamos, una serie de datos desde 2010 hasta la actualidad).

Miré en el sitio web de la NOAA relevante, y fue un poco abrumador por cómo tirar de esto en Power BI: https://www.ncdc.noaa.gov/cdo-web/webservices/v2

  1. He hecho la solicitud de un token : https://www.ncdc.noaa.gov/cdo-web/token
  2. He identificado una lista de muestra de estaciones meteorológicas de las que me gustaría extraer datos: acabo de elegir los aeropuertos en las 5 ciudades más grandes del NE USA. Estos son los códigos de la estación meteorológica:

GHCND:USW00014732

GHCND:USW00013739

GHCND:USW00014739

GHCND:USW00094823

GHCND:USW00014765

  1. Basándome en el consejo del sitio web de la NOAA, creé una URL que debería poder extraer estos datos con estos 5 códigos:

https://www.ncdc.noaa.gov/cdo-web/api/v2/datasets?stationid=GHCND:USW00014732&stationid=GHCND:USW000...

  1. Entré en Power BI Desktop > Obtener datos > Web > Básico > ingresé la dirección URL

pwares_0-1605907283340.png

Luego mecanogravé la URL en básico, pero luego encontré un error:

pwares_1-1605907283346.png

Por cualquier razón, Power BI no pidió un token para autenticarme. ¿Hay alguna manera sencilla de decirle a Power BI que tengo un token donde puedo extraer estos datos de la NOAA? El token debe actuar como una autenticación, sin embargo, no se me pidió que escriba uno.

¡Muchas gracias por tu ayuda!

Peter

1 ACCEPTED SOLUTION
Community Champion
Community Champion

Hola @pwares

El token debe proporcionarse en el encabezado de la solicitud. He probado esto y funciona, sólo tiene que introducir su propio token en la parte superior. Archivo PBIX de ejemplo aquí.

let

    api_url = "https://www.ncdc.noaa.gov/cdo-web/api/v2/datasets?stationid=GHCND:USW00014732&stationid=GHCND:USW00013739&stationid=GHCND:USW00014739&stationid=GHCND:USW00094823&stationid=GHCND:USW00014765",
    token = "XXXXXXXXX",

    Source = Json.Document(Web.Contents(api_url,
   [ 
     Headers = [token = token ,#"Content-Type"="application/json"]
   ]
   )
   ),
    #"Converted to Table" = Record.ToTable(Source),
    Value = #"Converted to Table"{1}[Value],
    #"Converted to Table1" = Table.FromList(Value, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table1", "Column1", {"uid", "mindate", "maxdate", "name", "datacoverage", "id"}, {"uid", "mindate", "maxdate", "name", "datacoverage", "id"})
in
    #"Expanded Column1"

saludos

Phil


Si respondí a su pregunta por favor marque mi post como la solución.
Si mi respuesta ayudó a resolver su problema, déle un kudos haciendo clic en Thumbs Up.

View solution in original post

4 REPLIES 4
Community Champion
Community Champion

Hola @pwares

El token debe proporcionarse en el encabezado de la solicitud. He probado esto y funciona, sólo tiene que introducir su propio token en la parte superior. Archivo PBIX de ejemplo aquí.

let

    api_url = "https://www.ncdc.noaa.gov/cdo-web/api/v2/datasets?stationid=GHCND:USW00014732&stationid=GHCND:USW00013739&stationid=GHCND:USW00014739&stationid=GHCND:USW00094823&stationid=GHCND:USW00014765",
    token = "XXXXXXXXX",

    Source = Json.Document(Web.Contents(api_url,
   [ 
     Headers = [token = token ,#"Content-Type"="application/json"]
   ]
   )
   ),
    #"Converted to Table" = Record.ToTable(Source),
    Value = #"Converted to Table"{1}[Value],
    #"Converted to Table1" = Table.FromList(Value, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
    #"Expanded Column1" = Table.ExpandRecordColumn(#"Converted to Table1", "Column1", {"uid", "mindate", "maxdate", "name", "datacoverage", "id"}, {"uid", "mindate", "maxdate", "name", "datacoverage", "id"})
in
    #"Expanded Column1"

saludos

Phil


Si respondí a su pregunta por favor marque mi post como la solución.
Si mi respuesta ayudó a resolver su problema, déle un kudos haciendo clic en Thumbs Up.

View solution in original post

Excelente, muchas gracias por la ayuda. Lo conchué en Power BI Advanced Editor y pude ver los datos. Esto es muy útil.

Community Champion
Community Champion

Hola @pwares

Debe especificar el parámetro de token en la dirección URL. Si hace clic en el vínculo que proporcionó que se supone que obtiene los datos de la API, le proporciona ese mensaje.

La documentación de la API indica que el token se debe pasar en el encabezado de solicitud, así que inténtelo. Inicie una nueva consulta en blanco en PBI y copie y pegue este código, con XXXXX para el token.

let
    api_url = "https://www.ncdc.noaa.gov/cdo-web/api/v2/datasets?stationid=GHCND:USW00014732&stationid=GHCND:USW00013739&stationid=GHCND:USW00014739&stationid=GHCND:USW00094823&stationid=GHCND:USW00014765",
    token = "XXXXX",
    Source = Json.Document(Web.Contents(api_url,
   [ 
     Headers = [#"Authorization"="Bearer "&token,#"Content-Type"="application/json"]
   ]
   )
   )
in
    Source

saludos

Phil


Si respondí a su pregunta por favor marque mi post como la solución.
Si mi respuesta ayudó a resolver su problema, déle un kudos haciendo clic en Thumbs Up.

Community Support
Community Support

Hola @pwares ,

¿Está diciendo que la siguiente ventana de verificación no aparece?

4.PNG

Si es así, puede ir a Opciones y configuración -> Configuración del origen de datos, busque el origen de datos y borre el permiso e inténtelo de nuevo.

5.PNG

Saludos

Jay

Community Support Team _ Jay
If this post helps, then please consider Accept it as the solution to help the other members find it.

Helpful resources

Announcements
secondImage

Happy New Year from Power BI

This is a must watch for a message from Power BI!

December Update

Check it Out!

Click here to read more about the December 2020 Updates!

Community Blog

Check it Out!

Click here to read the latest blog and learn more about contributing to the Power BI blog!

Get Ready for Power BI Dev Camp

Get Ready for Power BI Dev Camp

Mark your calendars and join us for our next Power BI Dev Camp!.

Top Solution Authors