API-REST: AEMET OPEN DATA

En este notebook veremos otro ejemplo de uso de la api open data de AEMET. En este caso obtendremos parámetros medidos por una estación meteorológica.


In [1]:
import requests

In [2]:
# Cargamos la api key 
api_key = open("../../apikey-aemet.txt").read().rstrip()
querystring = {"api_key": api_key}

Obtención de un listado con todas las estaciones


In [3]:
# Obtenemos información de todas als estaciones disponibles
url = "https://opendata.aemet.es/opendata/api/valores/climatologicos/inventarioestaciones/todasestaciones"

In [4]:
# Realizamos la request
r = requests.get(url, params=querystring, verify=False)


/home/asaez/miniconda3/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py:852: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
  InsecureRequestWarning)

In [5]:
import requests
from requests.packages.urllib3.exceptions import InsecureRequestWarning

requests.packages.urllib3.disable_warnings(InsecureRequestWarning)

In [6]:
# Obtenemos el link del que descargaremos los datos
data_url = r.json()['datos']
r_data = requests.get(data_url, params=querystring, verify=False)

In [7]:
# Vemos el contenido
stations = r_data.json()
stations


Out[7]:
[{'altitud': '98',
  'indicativo': '1387E',
  'indsinop': '08002',
  'latitud': '431825N',
  'longitud': '082219W',
  'nombre': 'A CORUÑA AEROPUERTO',
  'provincia': 'A CORUÑA'},
 {'altitud': '58',
  'indicativo': '1387',
  'indsinop': '08001',
  'latitud': '432157N',
  'longitud': '082517W',
  'nombre': 'A CORUÑA',
  'provincia': 'A CORUÑA'},
 {'altitud': '50',
  'indicativo': '1393',
  'indsinop': '08006',
  'latitud': '430938N',
  'longitud': '091239W',
  'nombre': 'CABO VILAN',
  'provincia': 'A CORUÑA'},
 {'altitud': '80',
  'indicativo': '1351',
  'indsinop': '08004',
  'latitud': '434710N',
  'longitud': '074105W',
  'nombre': 'ESTACA DE BARES',
  'provincia': 'A CORUÑA'},
 {'altitud': '230',
  'indicativo': '1400',
  'indsinop': '08040',
  'latitud': '425529N',
  'longitud': '091729W',
  'nombre': 'FISTERRA',
  'provincia': 'A CORUÑA'},
 {'altitud': '685',
  'indicativo': '1437O',
  'indsinop': '08043',
  'latitud': '424314N',
  'longitud': '085524W',
  'nombre': 'MONTE IROITE',
  'provincia': 'A CORUÑA'},
 {'altitud': '100',
  'indicativo': '1473A',
  'indsinop': '08039',
  'latitud': '424418N',
  'longitud': '083738W',
  'nombre': 'PADRÓN',
  'provincia': 'A CORUÑA'},
 {'altitud': '370',
  'indicativo': '1428',
  'indsinop': '08042',
  'latitud': '425317N',
  'longitud': '082438W',
  'nombre': 'SANTIAGO DE COMPOSTELA AEROPUERTO',
  'provincia': 'A CORUÑA'},
 {'altitud': '240',
  'indicativo': '1475X',
  'indsinop': '08041',
  'latitud': '425234N',
  'longitud': '083321W',
  'nombre': 'SANTIAGO DE COMPOSTELA',
  'provincia': 'A CORUÑA'},
 {'altitud': '702',
  'indicativo': '8175',
  'indsinop': '08280',
  'latitud': '385715N',
  'longitud': '015123W',
  'nombre': 'ALBACETE BASE AÉREA',
  'provincia': 'ALBACETE'},
 {'altitud': '674',
  'indicativo': '8178D',
  'indsinop': '08279',
  'latitud': '390020N',
  'longitud': '015144W',
  'nombre': 'ALBACETE',
  'provincia': 'ALBACETE'},
 {'altitud': '880',
  'indicativo': '8177A',
  'indsinop': '08278',
  'latitud': '385609N',
  'longitud': '013936W',
  'nombre': 'CHINCHILLA',
  'provincia': 'ALBACETE'},
 {'altitud': '605',
  'indicativo': '7096B',
  'indsinop': '08355',
  'latitud': '383231N',
  'longitud': '014211W',
  'nombre': 'HELLÍN',
  'provincia': 'ALBACETE'},
 {'altitud': '43',
  'indicativo': '8019',
  'indsinop': '08360',
  'latitud': '381658N',
  'longitud': '003415W',
  'nombre': 'ALICANTE/ALACANT AEROPUERTO',
  'provincia': 'ALICANTE'},
 {'altitud': '81',
  'indicativo': '8025',
  'indsinop': '08359',
  'latitud': '382221N',
  'longitud': '002939W',
  'nombre': 'ALICANTE/ALACANT',
  'provincia': 'ALICANTE'},
 {'altitud': '15',
  'indicativo': '8050X',
  'indsinop': '08370',
  'latitud': '384701N',
  'longitud': '001004E',
  'nombre': 'JÁVEA/ XÀBIA',
  'provincia': 'ALICANTE'},
 {'altitud': '575',
  'indicativo': '7247X',
  'indsinop': '08357',
  'latitud': '382359N',
  'longitud': '010217W',
  'nombre': 'PINOSO ',
  'provincia': 'ALICANTE'},
 {'altitud': '885',
  'indicativo': '6302A',
  'indsinop': '08427',
  'latitud': '370829N',
  'longitud': '024647W',
  'nombre': 'ABLA',
  'provincia': 'ALMERIA'},
 {'altitud': '8',
  'indicativo': '6277B',
  'indsinop': '08486',
  'latitud': '364450N',
  'longitud': '030114W',
  'nombre': 'ADRA',
  'provincia': 'ALMERIA'},
 {'altitud': '15',
  'indicativo': '6381',
  'indsinop': '08490',
  'latitud': '355618N',
  'longitud': '030210W',
  'nombre': 'ALBORÁN',
  'provincia': 'ALMERIA'},
 {'altitud': '21',
  'indicativo': '6325O',
  'indsinop': '08487',
  'latitud': '365047N',
  'longitud': '022125W',
  'nombre': 'ALMERÍA AEROPUERTO',
  'provincia': 'ALMERIA'},
 {'altitud': '7',
  'indicativo': '6297',
  'indsinop': '',
  'latitud': '364952N',
  'longitud': '022720W',
  'nombre': 'ALMERÍA',
  'provincia': 'ALMERIA'},
 {'altitud': '16',
  'indicativo': '6332X',
  'indsinop': '08488',
  'latitud': '365849N',
  'longitud': '015413W',
  'nombre': 'CARBONERAS',
  'provincia': 'ALMERIA'},
 {'altitud': '300',
  'indicativo': '6367B',
  'indsinop': '08428',
  'latitud': '372326N',
  'longitud': '015637W',
  'nombre': 'HUERCAL OVERA',
  'provincia': 'ALMERIA'},
 {'altitud': '3',
  'indicativo': '6293X',
  'indsinop': '08492',
  'latitud': '364113N',
  'longitud': '024206W',
  'nombre': 'ROQUETAS DE MAR',
  'provincia': 'ALMERIA'},
 {'altitud': '513',
  'indicativo': '9091O',
  'indsinop': '08080',
  'latitud': '425255N',
  'longitud': '024406W',
  'nombre': 'FORONDA-TXOKIZA',
  'provincia': 'ARABA/ALAVA'},
 {'altitud': '521',
  'indicativo': '9087',
  'indsinop': '',
  'latitud': '425059N',
  'longitud': '023922W',
  'nombre': 'VITORIA AERÓDROMO',
  'provincia': 'ARABA/ALAVA'},
 {'altitud': '513',
  'indicativo': '9091R',
  'indsinop': '08080',
  'latitud': '425219N',
  'longitud': '024359W',
  'nombre': 'VITORIA GASTEIZ AEROPUERTO',
  'provincia': 'ARABA/ALAVA'},
 {'altitud': '127',
  'indicativo': '1212E',
  'indsinop': '08011',
  'latitud': '433401N',
  'longitud': '060239W',
  'nombre': 'ASTURIAS AEROPUERTO',
  'provincia': 'ASTURIAS'},
 {'altitud': '60',
  'indicativo': '1283U',
  'indsinop': '08010',
  'latitud': '433409N',
  'longitud': '062812W',
  'nombre': 'CABO BUSTO',
  'provincia': 'ASTURIAS'},
 {'altitud': '100',
  'indicativo': '1210X',
  'indsinop': '08012',
  'latitud': '433921N',
  'longitud': '055055W',
  'nombre': 'CABO PEÑAS',
  'provincia': 'ASTURIAS'},
 {'altitud': '40',
  'indicativo': '1331A',
  'indsinop': '08009',
  'latitud': '433129N',
  'longitud': '070153W',
  'nombre': 'CASTROPOL',
  'provincia': 'ASTURIAS'},
 {'altitud': '26',
  'indicativo': '1207U',
  'indsinop': '08014',
  'latitud': '433123N',
  'longitud': '053716W',
  'nombre': 'GIJÓN, CAMPUS',
  'provincia': 'ASTURIAS'},
 {'altitud': '22',
  'indicativo': '1208A',
  'indsinop': '',
  'latitud': '433230N',
  'longitud': '053943W',
  'nombre': 'GIJÓN. LA MERCED',
  'provincia': 'ASTURIAS'},
 {'altitud': '5',
  'indicativo': '1208H',
  'indsinop': '08014',
  'latitud': '433336N',
  'longitud': '054203W',
  'nombre': 'GIJÓN, PUERTO',
  'provincia': 'ASTURIAS'},
 {'altitud': '3',
  'indicativo': '1208',
  'indsinop': '',
  'latitud': '433220N',
  'longitud': '053815W',
  'nombre': 'GIJÓN',
  'provincia': 'ASTURIAS'},
 {'altitud': '10',
  'indicativo': '1183X',
  'indsinop': '08016',
  'latitud': '432513N',
  'longitud': '044453W',
  'nombre': 'LLANES',
  'provincia': 'ASTURIAS'},
 {'altitud': '336',
  'indicativo': '1249I',
  'indsinop': '08015',
  'latitud': '432112N',
  'longitud': '055227W',
  'nombre': 'OVIEDO',
  'provincia': 'ASTURIAS'},
 {'altitud': '336',
  'indicativo': '1249X',
  'indsinop': '08015',
  'latitud': '432112N',
  'longitud': '055227W',
  'nombre': 'OVIEDO',
  'provincia': 'ASTURIAS'},
 {'altitud': '1530',
  'indicativo': '1542',
  'indsinop': '08052',
  'latitud': '425939N',
  'longitud': '062451W',
  'nombre': 'PUERTO DE LEITARIEGOS',
  'provincia': 'ASTURIAS'},
 {'altitud': '1480',
  'indicativo': '1221D',
  'indsinop': '08031',
  'latitud': '425843N',
  'longitud': '054635W',
  'nombre': 'PUERTO DE PAJARES',
  'provincia': 'ASTURIAS'},
 {'altitud': '1143',
  'indicativo': '2444C',
  'indsinop': '',
  'latitud': '403924N',
  'longitud': '044201W',
  'nombre': 'ÁVILA, AYUNTAMIENTO',
  'provincia': 'AVILA'},
 {'altitud': '1130',
  'indicativo': '2444',
  'indsinop': '08210',
  'latitud': '403933N',
  'longitud': '044048W',
  'nombre': 'ÁVILA',
  'provincia': 'AVILA'},
 {'altitud': '1525',
  'indicativo': '2811A',
  'indsinop': '08206',
  'latitud': '402102N',
  'longitud': '050835W',
  'nombre': 'NAVARREDONDA DE GREDOS',
  'provincia': 'AVILA'},
 {'altitud': '630',
  'indicativo': '3391',
  'indsinop': '08208',
  'latitud': '401719N',
  'longitud': '043527W',
  'nombre': 'SOTILLO DE LA ADRADA',
  'provincia': 'AVILA'},
 {'altitud': '185',
  'indicativo': '4452',
  'indsinop': '08330',
  'latitud': '385300N',
  'longitud': '064850W',
  'nombre': 'BADAJOZ AEROPUERTO',
  'provincia': 'BADAJOZ'},
 {'altitud': '273',
  'indicativo': '4358X',
  'indsinop': '08333',
  'latitud': '385720N',
  'longitud': '055250W',
  'nombre': 'DON BENITO',
  'provincia': 'BADAJOZ'},
 {'altitud': '447',
  'indicativo': '4244X',
  'indsinop': '08264',
  'latitud': '391010N',
  'longitud': '050344W',
  'nombre': 'HERRERA DEL DUQUE',
  'provincia': 'BADAJOZ'},
 {'altitud': '381',
  'indicativo': '4511C',
  'indsinop': '08337',
  'latitud': '381755N',
  'longitud': '064554W',
  'nombre': 'JEREZ DE LOS CABALLEROS',
  'provincia': 'BADAJOZ'},
 {'altitud': '655',
  'indicativo': '4386B',
  'indsinop': '08336',
  'latitud': '381354N',
  'longitud': '060101W',
  'nombre': 'LLERENA',
  'provincia': 'BADAJOZ'},
 {'altitud': '228',
  'indicativo': '4410X',
  'indsinop': '08331',
  'latitud': '385457N',
  'longitud': '062308W',
  'nombre': 'MÉRIDA',
  'provincia': 'BADAJOZ'},
 {'altitud': '74',
  'indicativo': '0252D',
  'indsinop': '08186',
  'latitud': '413515N',
  'longitud': '023224E',
  'nombre': 'ARENYS DE MAR',
  'provincia': 'BARCELONA'},
 {'altitud': '4',
  'indicativo': '0076',
  'indsinop': '08181',
  'latitud': '411734N',
  'longitud': '020412E',
  'nombre': 'BARCELONA AEROPUERTO',
  'provincia': 'BARCELONA'},
 {'altitud': '408',
  'indicativo': '0200E',
  'indsinop': '',
  'latitud': '412506N',
  'longitud': '020727E',
  'nombre': 'BARCELONA, FABRA',
  'provincia': 'BARCELONA'},
 {'altitud': '6',
  'indicativo': '0201D',
  'indsinop': '08180',
  'latitud': '412326N',
  'longitud': '021200E',
  'nombre': 'BARCELONA',
  'provincia': 'BARCELONA'},
 {'altitud': '291',
  'indicativo': '0149X',
  'indsinop': '08174',
  'latitud': '414312N',
  'longitud': '015025E',
  'nombre': 'MANRESA',
  'provincia': 'BARCELONA'},
 {'altitud': '146',
  'indicativo': '0229I',
  'indsinop': '08192',
  'latitud': '413125N',
  'longitud': '020611E',
  'nombre': 'SABADELL AEROPUERTO',
  'provincia': 'BARCELONA'},
 {'altitud': '40',
  'indicativo': '0255B',
  'indsinop': '08188',
  'latitud': '413903N',
  'longitud': '024149E',
  'nombre': 'SANTA SUSANNA',
  'provincia': 'BARCELONA'},
 {'altitud': '42',
  'indicativo': '1082',
  'indsinop': '08025',
  'latitud': '431753N',
  'longitud': '025423W',
  'nombre': 'BILBAO AEROPUERTO',
  'provincia': 'BIZKAIA'},
 {'altitud': '208',
  'indicativo': '1078I',
  'indsinop': '08035',
  'latitud': '431212N',
  'longitud': '030617W',
  'nombre': 'GÜEÑES',
  'provincia': 'BIZKAIA'},
 {'altitud': '12',
  'indicativo': '1055B',
  'indsinop': '08024',
  'latitud': '432237N',
  'longitud': '023037W',
  'nombre': 'LEKEITIO',
  'provincia': 'BIZKAIA'},
 {'altitud': '93',
  'indicativo': '1057B',
  'indsinop': '08022',
  'latitud': '432714N',
  'longitud': '024510W',
  'nombre': 'MACHICHACO',
  'provincia': 'BIZKAIA'},
 {'altitud': '90',
  'indicativo': '1059X',
  'indsinop': '08059',
  'latitud': '432230N',
  'longitud': '030118W',
  'nombre': 'PUNTA GALEA',
  'provincia': 'BIZKAIA'},
 {'altitud': '790',
  'indicativo': '2117D',
  'indsinop': '08144',
  'latitud': '413957N',
  'longitud': '034434W',
  'nombre': 'ARANDA DE DUERO',
  'provincia': 'BURGOS'},
 {'altitud': '820',
  'indicativo': '9111',
  'indsinop': '08077',
  'latitud': '422516N',
  'longitud': '031013W',
  'nombre': 'BELORADO',
  'provincia': 'BURGOS'},
 {'altitud': '891',
  'indicativo': '2331',
  'indsinop': '08075',
  'latitud': '422125N',
  'longitud': '033713W',
  'nombre': 'BURGOS AEROPUERTO',
  'provincia': 'BURGOS'},
 {'altitud': '580',
  'indicativo': '9051',
  'indsinop': '08063',
  'latitud': '425512N',
  'longitud': '032858W',
  'nombre': 'MEDINA DE POMAR',
  'provincia': 'BURGOS'},
 {'altitud': '1080',
  'indicativo': '2298',
  'indsinop': '08149',
  'latitud': '415735N',
  'longitud': '030754W',
  'nombre': 'PALACIOS DE LA SIERRA',
  'provincia': 'BURGOS'},
 {'altitud': '459',
  'indicativo': '3469',
  'indsinop': '',
  'latitud': '392833N',
  'longitud': '062235W',
  'nombre': 'CÁCERES, CIUDAD',
  'provincia': 'CACERES'},
 {'altitud': '394',
  'indicativo': '3469A',
  'indsinop': '08261',
  'latitud': '392817N',
  'longitud': '062020W',
  'nombre': 'CÁCERES',
  'provincia': 'CACERES'},
 {'altitud': '313',
  'indicativo': '3526X',
  'indsinop': '08251',
  'latitud': '400013N',
  'longitud': '063327W',
  'nombre': 'CORIA',
  'provincia': 'CACERES'},
 {'altitud': '269',
  'indicativo': '3434X',
  'indsinop': '08254',
  'latitud': '395645N',
  'longitud': '053457W',
  'nombre': 'NAVALMORAL DE LA MATA',
  'provincia': 'CACERES'},
 {'altitud': '415',
  'indicativo': '3519X',
  'indsinop': '08252',
  'latitud': '400235N',
  'longitud': '060509W',
  'nombre': 'PLASENCIA',
  'provincia': 'CACERES'},
 {'altitud': '503',
  'indicativo': '3463X',
  'indsinop': '08263',
  'latitud': '392857N',
  'longitud': '055115W',
  'nombre': 'TRUJILLO',
  'provincia': 'CACERES'},
 {'altitud': '445',
  'indicativo': '3576X',
  'indsinop': '08260',
  'latitud': '392458N',
  'longitud': '071452W',
  'nombre': 'VALENCIA DE ALCÁNTARA',
  'provincia': 'CACERES'},
 {'altitud': '2',
  'indicativo': '5973',
  'indsinop': '08452',
  'latitud': '362959N',
  'longitud': '061528W',
  'nombre': 'CÁDIZ',
  'provincia': 'CADIZ'},
 {'altitud': '913',
  'indicativo': '5911A',
  'indsinop': '08455',
  'latitud': '364538N',
  'longitud': '052227W',
  'nombre': 'GRAZALEMA',
  'provincia': 'CADIZ'},
 {'altitud': '27',
  'indicativo': '5960',
  'indsinop': '08451',
  'latitud': '364502N',
  'longitud': '060321W',
  'nombre': 'JEREZ DE LA FRONTERA AEROPUERTO',
  'provincia': 'CADIZ'},
 {'altitud': '21',
  'indicativo': '5910',
  'indsinop': '08449',
  'latitud': '363820N',
  'longitud': '061957W',
  'nombre': 'ROTA, BASE NAVAL',
  'provincia': 'CADIZ'},
 {'altitud': '28',
  'indicativo': '5972X',
  'indsinop': '08453',
  'latitud': '362756N',
  'longitud': '061220W',
  'nombre': 'SAN FERNANDO',
  'provincia': 'CADIZ'},
 {'altitud': '32',
  'indicativo': '6001',
  'indsinop': '08458',
  'latitud': '360050N',
  'longitud': '053556W',
  'nombre': 'TARIFA',
  'provincia': 'CADIZ'},
 {'altitud': '186',
  'indicativo': '5995B',
  'indsinop': '08457',
  'latitud': '361444N',
  'longitud': '055754W',
  'nombre': 'VEJER DE LA FRONTERA',
  'provincia': 'CADIZ'},
 {'altitud': '45',
  'indicativo': '1083L',
  'indsinop': '08020',
  'latitud': '432341N',
  'longitud': '031402W',
  'nombre': 'CASTRO URDIALES',
  'provincia': 'CANTABRIA'},
 {'altitud': '870',
  'indicativo': '9001D',
  'indsinop': '08032',
  'latitud': '425931N',
  'longitud': '040938W',
  'nombre': 'REINOSA',
  'provincia': 'CANTABRIA'},
 {'altitud': '40',
  'indicativo': '1159',
  'indsinop': '08017',
  'latitud': '432336N',
  'longitud': '042332W',
  'nombre': 'SAN VICENTE DE LA BARQUERA',
  'provincia': 'CANTABRIA'},
 {'altitud': '3',
  'indicativo': '1109',
  'indsinop': '08021',
  'latitud': '432526N',
  'longitud': '034932W',
  'nombre': 'SANTANDER AEROPUERTO',
  'provincia': 'CANTABRIA'},
 {'altitud': '64',
  'indicativo': '1110',
  'indsinop': '',
  'latitud': '432754N',
  'longitud': '034908W',
  'nombre': 'SANTANDER, CIUDAD',
  'provincia': 'CANTABRIA'},
 {'altitud': '52',
  'indicativo': '1111X',
  'indsinop': '08023',
  'latitud': '432928N',
  'longitud': '034802W',
  'nombre': 'SANTANDER',
  'provincia': 'CANTABRIA'},
 {'altitud': '52',
  'indicativo': '1111',
  'indsinop': '08023',
  'latitud': '432928N',
  'longitud': '034802W',
  'nombre': 'SANTANDER',
  'provincia': 'CANTABRIA'},
 {'altitud': '720',
  'indicativo': '9019B',
  'indsinop': '08033',
  'latitud': '424823N',
  'longitud': '035602W',
  'nombre': 'VALDERREDIBLE, POLIENTES   ',
  'provincia': 'CANTABRIA'},
 {'altitud': '1220',
  'indicativo': '9563X',
  'indsinop': '08237',
  'latitud': '402955N',
  'longitud': '001112W',
  'nombre': 'CASTELLFORT',
  'provincia': 'CASTELLON'},
 {'altitud': '43',
  'indicativo': '8500A',
  'indsinop': '08286',
  'latitud': '395726N',
  'longitud': '000419W',
  'nombre': 'CASTELLÓN DE LA PLANA, ALMAZORA',
  'provincia': 'CASTELLON'},
 {'altitud': '25',
  'indicativo': '8501',
  'indsinop': '',
  'latitud': '395920N',
  'longitud': '000224W',
  'nombre': 'CASTELLÓN DE LA PLANA',
  'provincia': 'CASTELLON'},
 {'altitud': '1131',
  'indicativo': '8489X',
  'indsinop': '08241',
  'latitud': '402600N',
  'longitud': '001521W',
  'nombre': 'VILLAFRANCA DEL CID/VILLAFRANCA',
  'provincia': 'CASTELLON'},
 {'altitud': '111',
  'indicativo': '8523X',
  'indsinop': '08239',
  'latitud': '403315N',
  'longitud': '002547E',
  'nombre': 'VINARÒS',
  'provincia': 'CASTELLON'},
 {'altitud': '200',
  'indicativo': '5000A',
  'indsinop': '',
  'latitud': '355344N',
  'longitud': '051732W',
  'nombre': 'CEUTA, MONTE HACHO',
  'provincia': 'CEUTA'},
 {'altitud': '87',
  'indicativo': '5000C',
  'indsinop': '60320',
  'latitud': '355319N',
  'longitud': '052049W',
  'nombre': 'CEUTA',
  'provincia': 'CEUTA'},
 {'altitud': '627',
  'indicativo': '4121C',
  'indsinop': '',
  'latitud': '385916N',
  'longitud': '035545W',
  'nombre': 'CIUDAD REAL, INSTITUTO',
  'provincia': 'CIUDAD REAL'},
 {'altitud': '628',
  'indicativo': '4121',
  'indsinop': '08348',
  'latitud': '385921N',
  'longitud': '035513W',
  'nombre': 'CIUDAD REAL',
  'provincia': 'CIUDAD REAL'},
 {'altitud': '485',
  'indicativo': '4220X',
  'indsinop': '08271',
  'latitud': '390519N',
  'longitud': '043659W',
  'nombre': 'PUEBLA DE DON RODRIGO',
  'provincia': 'CIUDAD REAL'},
 {'altitud': '662',
  'indicativo': '4103X',
  'indsinop': '08276',
  'latitud': '391009N',
  'longitud': '030027W',
  'nombre': 'TOMELLOSO',
  'provincia': 'CIUDAD REAL'},
 {'altitud': '700',
  'indicativo': '4147X',
  'indsinop': '08351',
  'latitud': '384502N',
  'longitud': '032329W',
  'nombre': 'VALDEPEÑAS',
  'provincia': 'CIUDAD REAL'},
 {'altitud': '778',
  'indicativo': '4148',
  'indsinop': '08345',
  'latitud': '383105N',
  'longitud': '033400W',
  'nombre': 'VISO DEL MARQUÉS',
  'provincia': 'CIUDAD REAL'},
 {'altitud': '90',
  'indicativo': '5402',
  'indsinop': '08410',
  'latitud': '375056N',
  'longitud': '045048W',
  'nombre': 'CÓRDOBA AEROPUERTO',
  'provincia': 'CORDOBA'},
 {'altitud': '650',
  'indicativo': '5427X',
  'indsinop': '08412',
  'latitud': '373322N',
  'longitud': '042114W',
  'nombre': 'DOÑA MENCÍA',
  'provincia': 'CORDOBA'},
 {'altitud': '551',
  'indicativo': '4267X',
  'indsinop': '08335',
  'latitud': '382954N',
  'longitud': '050717W',
  'nombre': 'HINOJOSA DEL DUQUE',
  'provincia': 'CORDOBA'},
 {'altitud': '750',
  'indicativo': '5390Y',
  'indsinop': '08346',
  'latitud': '381959N',
  'longitud': '043632W',
  'nombre': 'VILLANUEVA DE CÓRDOBA',
  'provincia': 'CORDOBA'},
 {'altitud': '940',
  'indicativo': '3044X',
  'indsinop': '08230',
  'latitud': '403149N',
  'longitud': '020900W',
  'nombre': 'CAÑIZARES',
  'provincia': 'CUENCA'},
 {'altitud': '948',
  'indicativo': '8096',
  'indsinop': '08231',
  'latitud': '400402N',
  'longitud': '020755W',
  'nombre': 'CUENCA',
  'provincia': 'CUENCA'},
 {'altitud': '728',
  'indicativo': '4090Y',
  'indsinop': '08256',
  'latitud': '392500N',
  'longitud': '022514W',
  'nombre': 'SAN CLEMENTE',
  'provincia': 'CUENCA'},
 {'altitud': '808',
  'indicativo': '3094B',
  'indsinop': '08277',
  'latitud': '400041N',
  'longitud': '030117W',
  'nombre': 'TARANCÓN',
  'provincia': 'CUENCA'},
 {'altitud': '251',
  'indicativo': '1024E',
  'indsinop': '08027',
  'latitud': '431823N',
  'longitud': '020228W',
  'nombre': 'DONOSTIA/SAN SEBASTIÁN, IGUELDO',
  'provincia': 'GIPUZKOA'},
 {'altitud': '120',
  'indicativo': '1050J',
  'indsinop': '08036',
  'latitud': '431234N',
  'longitud': '022448W',
  'nombre': 'ELGOIBAR',
  'provincia': 'GIPUZKOA'},
 {'altitud': '4',
  'indicativo': '1014',
  'indsinop': '08029',
  'latitud': '432125N',
  'longitud': '014732W',
  'nombre': 'HONDARRIBIA, MALKARROA',
  'provincia': 'GIPUZKOA'},
 {'altitud': '4',
  'indicativo': '1014A',
  'indsinop': '08029',
  'latitud': '432125N',
  'longitud': '014732W',
  'nombre': 'SAN SEBASTIÁN AEROPUERTO',
  'provincia': 'GIPUZKOA'},
 {'altitud': '28',
  'indicativo': '1041A',
  'indsinop': '08026',
  'latitud': '431808N',
  'longitud': '021504W',
  'nombre': 'ZUMAIA',
  'provincia': 'GIPUZKOA'},
 {'altitud': '420',
  'indicativo': '1037Y',
  'indsinop': '08037',
  'latitud': '430448N',
  'longitud': '021904W',
  'nombre': 'ZUMARRAGA',
  'provincia': 'GIPUZKOA'},
 {'altitud': '143',
  'indicativo': '0367',
  'indsinop': '08184',
  'latitud': '415442N',
  'longitud': '024548E',
  'nombre': 'GIRONA AEROPUERTO',
  'provincia': 'GIRONA'},
 {'altitud': '95',
  'indicativo': '0370B',
  'indsinop': '',
  'latitud': '415848N',
  'longitud': '024931E',
  'nombre': 'GIRONA, ANTIC INSTITUT',
  'provincia': 'GIRONA'},
 {'altitud': '1703',
  'indicativo': '9585',
  'indsinop': '08117',
  'latitud': '421957N',
  'longitud': '015622E',
  'nombre': 'LA MOLINA',
  'provincia': 'GIRONA'},
 {'altitud': '157',
  'indicativo': '0372C',
  'indsinop': '08120',
  'latitud': '420616N',
  'longitud': '024549E',
  'nombre': 'PORQUERES',
  'provincia': 'GIRONA'},
 {'altitud': '675',
  'indicativo': '0324A',
  'indsinop': '08118',
  'latitud': '421129N',
  'longitud': '021146E',
  'nombre': 'RIPOLL',
  'provincia': 'GIRONA'},
 {'altitud': '785',
  'indicativo': '5047E',
  'indsinop': '08424',
  'latitud': '373021N',
  'longitud': '024406W',
  'nombre': 'BAZA',
  'provincia': 'GRANADA'},
 {'altitud': '567',
  'indicativo': '5530E',
  'indsinop': '08419',
  'latitud': '371123N',
  'longitud': '034722W',
  'nombre': 'GRANADA AEROPUERTO',
  'provincia': 'GRANADA'},
 {'altitud': '687',
  'indicativo': '5514',
  'indsinop': '08420',
  'latitud': '370814N',
  'longitud': '033753W',
  'nombre': 'GRANADA BASE AÉREA',
  'provincia': 'GRANADA'},
 {'altitud': '1092',
  'indicativo': '5051X',
  'indsinop': '08423',
  'latitud': '375140N',
  'longitud': '023910W',
  'nombre': 'HUÉSCAR',
  'provincia': 'GRANADA'},
 {'altitud': '594',
  'indicativo': '5582A',
  'indsinop': '08414',
  'latitud': '370940N',
  'longitud': '040910W',
  'nombre': 'LOJA',
  'provincia': 'GRANADA'},
 {'altitud': '12',
  'indicativo': '6268X',
  'indsinop': '08485',
  'latitud': '364327N',
  'longitud': '033144W',
  'nombre': 'MOTRIL',
  'provincia': 'GRANADA'},
 {'altitud': '639',
  'indicativo': '3168C',
  'indsinop': '08226',
  'latitud': '403933N',
  'longitud': '031024W',
  'nombre': 'GUADALAJARA, EL SERRANILLO',
  'provincia': 'GUADALAJARA'},
 {'altitud': '685',
  'indicativo': '3168A',
  'indsinop': '',
  'latitud': '403805N',
  'longitud': '031000W',
  'nombre': 'GUADALAJARA, INSTITUTO',
  'provincia': 'GUADALAJARA'},
 {'altitud': '721',
  'indicativo': '3168D',
  'indsinop': '08226',
  'latitud': '403749N',
  'longitud': '030900W',
  'nombre': 'GUADALAJARA',
  'provincia': 'GUADALAJARA'},
 {'altitud': '1062',
  'indicativo': '3013',
  'indsinop': '08232',
  'latitud': '405030N',
  'longitud': '015244W',
  'nombre': 'MOLINA DE ARAGÓN',
  'provincia': 'GUADALAJARA'},
 {'altitud': '1005',
  'indicativo': '3130C',
  'indsinop': '08150',
  'latitud': '410511N',
  'longitud': '023705W',
  'nombre': 'SIGÜENZA',
  'provincia': 'GUADALAJARA'},
 {'altitud': '572',
  'indicativo': '4560Y',
  'indsinop': '08380',
  'latitud': '375207N',
  'longitud': '064030W',
  'nombre': 'ALAJAR',
  'provincia': 'HUELVA'},
 {'altitud': '2',
  'indicativo': '4549Y',
  'indsinop': '08381',
  'latitud': '371141N',
  'longitud': '072342W',
  'nombre': 'AYAMONTE',
  'provincia': 'HUELVA'},
 {'altitud': '19',
  'indicativo': '4642E',
  'indsinop': '08383',
  'latitud': '371642N',
  'longitud': '065442W',
  'nombre': 'HUELVA, RONDA ESTE',
  'provincia': 'HUELVA'},
 {'altitud': '17',
  'indicativo': '4605',
  'indsinop': '',
  'latitud': '371524N',
  'longitud': '065659W',
  'nombre': 'HUELVA',
  'provincia': 'HUELVA'},
 {'altitud': '41',
  'indicativo': '5860E',
  'indsinop': '08384',
  'latitud': '370553N',
  'longitud': '064417W',
  'nombre': 'MOGUER, EL ARENOSILLO',
  'provincia': 'HUELVA'},
 {'altitud': '1040',
  'indicativo': '9208E',
  'indsinop': '08095',
  'latitud': '424232N',
  'longitud': '004023W',
  'nombre': 'ARAGÜÉS DEL PUERTO',
  'provincia': 'HUESCA'},
 {'altitud': '990',
  'indicativo': '9784P',
  'indsinop': '08103',
  'latitud': '423748N',
  'longitud': '001329E',
  'nombre': 'BIELSA',
  'provincia': 'HUESCA'},
 {'altitud': '546',
  'indicativo': '9898',
  'indsinop': '08094',
  'latitud': '420504N',
  'longitud': '001932W',
  'nombre': 'HUESCA AEROPUERTO',
  'provincia': 'HUESCA'},
 {'altitud': '823',
  'indicativo': '9201K',
  'indsinop': '08091',
  'latitud': '423444N',
  'longitud': '003249W',
  'nombre': 'JACA',
  'provincia': 'HUESCA'},
 {'altitud': '1020',
  'indicativo': '9814A',
  'indsinop': '08101',
  'latitud': '423736N',
  'longitud': '000642W',
  'nombre': 'TORLA',
  'provincia': 'HUESCA'},
 {'altitud': '66',
  'indicativo': 'B569X',
  'indsinop': '08311',
  'latitud': '394256N',
  'longitud': '032841E',
  'nombre': 'CAPDEPERA',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '490',
  'indicativo': 'B013X',
  'indsinop': '08304',
  'latitud': '394924N',
  'longitud': '025309E',
  'nombre': 'ESCORCA, LLUC',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '6',
  'indicativo': 'B954',
  'indsinop': '08373',
  'latitud': '385235N',
  'longitud': '012304E',
  'nombre': 'IBIZA, AEROPUERTO',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '91',
  'indicativo': 'B893',
  'indsinop': '08314',
  'latitud': '395117N',
  'longitud': '041256E',
  'nombre': 'MENORCA, AEROPUERTO',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '8',
  'indicativo': 'B278',
  'indsinop': '08306',
  'latitud': '393339N',
  'longitud': '024412E',
  'nombre': 'PALMA DE MALLORCA, AEROPUERTO',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '3',
  'indicativo': 'B228',
  'indsinop': '08301',
  'latitud': '393312N',
  'longitud': '023731E',
  'nombre': 'PALMA DE MALLORCA, PUERTO',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '120',
  'indicativo': 'B346X',
  'indsinop': '08310',
  'latitud': '393118N',
  'longitud': '030109E',
  'nombre': 'PORRERES',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '17',
  'indicativo': 'B434X',
  'indsinop': '08309',
  'latitud': '392452N',
  'longitud': '031618E',
  'nombre': 'PORTOCOLOM  ',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '40',
  'indicativo': 'B691Y',
  'indsinop': '08312',
  'latitud': '394457N',
  'longitud': '030100E',
  'nombre': 'SA POBLA',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '1030',
  'indicativo': 'B248',
  'indsinop': '08303',
  'latitud': '394406N',
  'longitud': '024247E',
  'nombre': 'SIERRA DE ALFABIA, BUNYOLA',
  'provincia': 'ILLES BALEARS'},
 {'altitud': '202',
  'indicativo': '5298X',
  'indsinop': '08347',
  'latitud': '380123N',
  'longitud': '040350W',
  'nombre': 'ANDÚJAR',
  'provincia': 'JAEN'},
 {'altitud': '580',
  'indicativo': '5181D',
  'indsinop': '08352',
  'latitud': '381853N',
  'longitud': '025323W',
  'nombre': 'ARROYO DEL OJANCO',
  'provincia': 'JAEN'},
 {'altitud': '813',
  'indicativo': '5038X',
  'indsinop': '08353',
  'latitud': '375457N',
  'longitud': '030014W',
  'nombre': 'CAZORLA',
  'provincia': 'JAEN'},
 {'altitud': '510',
  'indicativo': '5270',
  'indsinop': '',
  'latitud': '374635N',
  'longitud': '034720W',
  'nombre': 'JAÉN, INSTITUTO',
  'provincia': 'JAEN'},
 {'altitud': '580',
  'indicativo': '5270B',
  'indsinop': '08417',
  'latitud': '374639N',
  'longitud': '034832W',
  'nombre': 'JAÉN',
  'provincia': 'JAEN'},
 {'altitud': '770',
  'indicativo': '5246',
  'indsinop': '08350',
  'latitud': '382040N',
  'longitud': '033207W',
  'nombre': 'SANTA ELENA',
  'provincia': 'JAEN'},
 {'altitud': '862',
  'indicativo': '5192',
  'indsinop': '08354',
  'latitud': '382921N',
  'longitud': '023815W',
  'nombre': 'VILLARRODRIGO',
  'provincia': 'JAEN'},
 {'altitud': '353',
  'indicativo': '9170',
  'indsinop': '08084',
  'latitud': '422708N',
  'longitud': '021952W',
  'nombre': 'LOGROÑO AEROPUERTO',
  'provincia': 'LA RIOJA'},
 {'altitud': '25',
  'indicativo': 'C249I',
  'indsinop': '60035',
  'latitud': '282641N',
  'longitud': '135147W',
  'nombre': 'FUERTEVENTURA AEROPUERTO',
  'provincia': 'LAS PALMAS'},
 {'altitud': '32',
  'indicativo': 'C649I',
  'indsinop': '60030',
  'latitud': '275504N',
  'longitud': '152343W',
  'nombre': 'GRAN CANARIA AEROPUERTO',
  'provincia': 'LAS PALMAS'},
 {'altitud': '10',
  'indicativo': 'C619I',
  'indsinop': '60027',
  'latitud': '280003N',
  'longitud': '154850W',
  'nombre': 'LA ALDEA DE SAN NICOLÁS',
  'provincia': 'LAS PALMAS'},
 {'altitud': '14',
  'indicativo': 'C029O',
  'indsinop': '60040',
  'latitud': '285707N',
  'longitud': '133601W',
  'nombre': 'LANZAROTE AEROPUERTO',
  'provincia': 'LAS PALMAS'},
 {'altitud': '15',
  'indicativo': 'C659M',
  'indsinop': '60032',
  'latitud': '280647N',
  'longitud': '152517W',
  'nombre': 'LAS PALMAS DE GRAN CANARIA, PL. DE LA FERIA',
  'provincia': 'LAS PALMAS'},
 {'altitud': '55',
  'indicativo': 'C659H',
  'indsinop': '60029',
  'latitud': '280523N',
  'longitud': '152458W',
  'nombre': 'LAS PALMAS DE GRAN CANARIA, SAN CRISTOBAL',
  'provincia': 'LAS PALMAS'},
 {'altitud': '6',
  'indicativo': 'C689E',
  'indsinop': '60037',
  'latitud': '274409N',
  'longitud': '153545W',
  'nombre': 'MASPALOMAS',
  'provincia': 'LAS PALMAS'},
 {'altitud': '10',
  'indicativo': 'C629X',
  'indsinop': '60036',
  'latitud': '274859N',
  'longitud': '154551W',
  'nombre': 'MOGÁN, PUERTO',
  'provincia': 'LAS PALMAS'},
 {'altitud': '15',
  'indicativo': 'C229J',
  'indsinop': '60034',
  'latitud': '280257N',
  'longitud': '142129W',
  'nombre': 'PÁJARA',
  'provincia': 'LAS PALMAS'},
 {'altitud': '10',
  'indicativo': 'C839I',
  'indsinop': '',
  'latitud': '291355N',
  'longitud': '133007W',
  'nombre': 'TEGUISE',
  'provincia': 'LAS PALMAS'},
 {'altitud': '1020',
  'indicativo': '2737E',
  'indsinop': '08123',
  'latitud': '422239N',
  'longitud': '061148W',
  'nombre': 'LAGUNAS DE SOMOZA',
  'provincia': 'LEON'},
 {'altitud': '912',
  'indicativo': '2661B',
  'indsinop': '08055',
  'latitud': '423558N',
  'longitud': '053837W',
  'nombre': 'LEÓN AEROPUERTO',
  'provincia': 'LEON'},
 {'altitud': '916',
  'indicativo': '2661',
  'indsinop': '08055',
  'latitud': '423518N',
  'longitud': '053904W',
  'nombre': 'LEÓN, VIRGEN DEL CAMINO',
  'provincia': 'LEON'},
 {'altitud': '534',
  'indicativo': '1549',
  'indsinop': '08053',
  'latitud': '423350N',
  'longitud': '063600W',
  'nombre': 'PONFERRADA',
  'provincia': 'LEON'},
 {'altitud': '1510',
  'indicativo': '2630X',
  'indsinop': '08057',
  'latitud': '430344N',
  'longitud': '052237W',
  'nombre': 'PUERTO DE SAN ISIDRO',
  'provincia': 'LEON'},
 {'altitud': '677',
  'indicativo': '9619',
  'indsinop': '08115',
  'latitud': '422117N',
  'longitud': '012747E',
  'nombre': "LA SEU D'URGELL",
  'provincia': 'LLEIDA'},
 {'altitud': '199',
  'indicativo': '9771',
  'indsinop': '',
  'latitud': '413702N',
  'longitud': '003716E',
  'nombre': 'LLEIDA, OBSERVATORIO',
  'provincia': 'LLEIDA'},
 {'altitud': '185',
  'indicativo': '9771C',
  'indsinop': '08171',
  'latitud': '413734N',
  'longitud': '003553E',
  'nombre': 'LLEIDA',
  'provincia': 'LLEIDA'},
 {'altitud': '1161',
  'indicativo': '9990X',
  'indsinop': '08107',
  'latitud': '424201N',
  'longitud': '005237E',
  'nombre': 'NAUT ARAN, ARTIES ',
  'provincia': 'LLEIDA'},
 {'altitud': '807',
  'indicativo': '9698U',
  'indsinop': '08112',
  'latitud': '421219N',
  'longitud': '005155E',
  'nombre': 'TALARN',
  'provincia': 'LLEIDA'},
 {'altitud': '388',
  'indicativo': '9720X',
  'indsinop': '08173',
  'latitud': '413902N',
  'longitud': '010858E',
  'nombre': 'TÀRREGA',
  'provincia': 'LLEIDA'},
 {'altitud': '445',
  'indicativo': '1505',
  'indsinop': '08008',
  'latitud': '430641N',
  'longitud': '072727W',
  'nombre': 'LUGO AEROPUERTO',
  'provincia': 'LUGO'},
 {'altitud': '540',
  'indicativo': '3100B',
  'indsinop': '08229',
  'latitud': '400402N',
  'longitud': '033246W',
  'nombre': 'ARANJUEZ',
  'provincia': 'MADRID'},
 {'altitud': '1026',
  'indicativo': '3110C',
  'indsinop': '08146',
  'latitud': '410025N',
  'longitud': '033649W',
  'nombre': 'BUITRAGO DEL LOZOYA',
  'provincia': 'MADRID'},
 {'altitud': '1004',
  'indicativo': '3191E',
  'indsinop': '08219',
  'latitud': '404146N',
  'longitud': '034554W',
  'nombre': 'COLMENAR VIEJO',
  'provincia': 'MADRID'},
 {'altitud': '620',
  'indicativo': '3200',
  'indsinop': '08224',
  'latitud': '401758N',
  'longitud': '034320W',
  'nombre': 'GETAFE',
  'provincia': 'MADRID'},
 {'altitud': '609',
  'indicativo': '3129',
  'indsinop': '08221',
  'latitud': '402800N',
  'longitud': '033320W',
  'nombre': 'MADRID AEROPUERTO',
  'provincia': 'MADRID'},
 {'altitud': '664',
  'indicativo': '3194U',
  'indsinop': '08220',
  'latitud': '402706N',
  'longitud': '034327W',
  'nombre': 'MADRID, CIUDAD UNIVERSITARIA',
  'provincia': 'MADRID'},
 {'altitud': '690',
  'indicativo': '3196',
  'indsinop': '08223',
  'latitud': '402232N',
  'longitud': '034710W',
  'nombre': 'MADRID, CUATRO VIENTOS',
  'provincia': 'MADRID'},
 {'altitud': '667',
  'indicativo': '3195',
  'indsinop': '08222',
  'latitud': '402443N',
  'longitud': '034041W',
  'nombre': 'MADRID, RETIRO',
  'provincia': 'MADRID'},
 {'altitud': '1532',
  'indicativo': '3266A',
  'indsinop': '08217',
  'latitud': '404223N',
  'longitud': '040831W',
  'nombre': 'PUERTO ALTO DEL LEÓN',
  'provincia': 'MADRID'},
 {'altitud': '1894',
  'indicativo': '2462',
  'indsinop': '08215',
  'latitud': '404735N',
  'longitud': '040038W',
  'nombre': 'PUERTO DE NAVACERRADA',
  'provincia': 'MADRID'},
 {'altitud': '790',
  'indicativo': '3338',
  'indsinop': '08212',
  'latitud': '402540N',
  'longitud': '041500W',
  'nombre': 'ROBLEDO DE CHAVELA',
  'provincia': 'MADRID'},
 {'altitud': '1450',
  'indicativo': '3111D',
  'indsinop': '08145',
  'latitud': '410808N',
  'longitud': '033449W',
  'nombre': 'SOMOSIERRA',
  'provincia': 'MADRID'},
 {'altitud': '607',
  'indicativo': '3175',
  'indsinop': '08227',
  'latitud': '402919N',
  'longitud': '032637W',
  'nombre': 'TORREJÓN DE ARDOZ',
  'provincia': 'MADRID'},
 {'altitud': '408',
  'indicativo': '6106X',
  'indsinop': '08413',
  'latitud': '370146N',
  'longitud': '044454W',
  'nombre': 'ANTEQUERA',
  'provincia': 'MALAGA'},
 {'altitud': '11',
  'indicativo': '6058I',
  'indsinop': '08463',
  'latitud': '362501N',
  'longitud': '050918W',
  'nombre': 'ESTEPONA',
  'provincia': 'MALAGA'},
 {'altitud': '8',
  'indicativo': '6084X',
  'indsinop': '08480',
  'latitud': '363219N',
  'longitud': '043706W',
  'nombre': 'FUENGIROLA',
  'provincia': 'MALAGA'},
 {'altitud': '5',
  'indicativo': '6155A',
  'indsinop': '08482',
  'latitud': '363958N',
  'longitud': '042856W',
  'nombre': 'MÁLAGA AEROPUERTO',
  'provincia': 'MALAGA'},
 {'altitud': '54',
  'indicativo': '6156X',
  'indsinop': '08481',
  'latitud': '364304N',
  'longitud': '042854W',
  'nombre': 'MÁLAGA, CENTRO METEOROLÓGICO',
  'provincia': 'MALAGA'},
 {'altitud': '25',
  'indicativo': '6172O',
  'indsinop': '08479',
  'latitud': '364300N',
  'longitud': '042511W',
  'nombre': 'MÁLAGA, PUERTO',
  'provincia': 'MALAGA'},
 {'altitud': '766',
  'indicativo': '6032B',
  'indsinop': '08443',
  'latitud': '364459N',
  'longitud': '051006W',
  'nombre': 'RONDA',
  'provincia': 'MALAGA'},
 {'altitud': '3',
  'indicativo': '6205X',
  'indsinop': '08484',
  'latitud': '364335N',
  'longitud': '035726W',
  'nombre': 'TORROX',
  'provincia': 'MALAGA'},
 {'altitud': '52',
  'indicativo': '6000A',
  'indsinop': '60338',
  'latitud': '351635N',
  'longitud': '025723W',
  'nombre': 'MELILLA',
  'provincia': 'MELILLA'},
 {'altitud': '26',
  'indicativo': '7002Y',
  'indsinop': '08432',
  'latitud': '372502N',
  'longitud': '013513W',
  'nombre': 'ÁGUILAS',
  'provincia': 'MURCIA'},
 {'altitud': '75',
  'indicativo': '7228',
  'indsinop': '08429',
  'latitud': '375728N',
  'longitud': '011343W',
  'nombre': 'ALCANTARILLA, BASE AÉREA',
  'provincia': 'MURCIA'},
 {'altitud': '643',
  'indicativo': '7119B',
  'indsinop': '08365',
  'latitud': '380609N',
  'longitud': '015238W',
  'nombre': 'CARAVACA DE LA CRUZ',
  'provincia': 'MURCIA'},
 {'altitud': '17',
  'indicativo': '7012C',
  'indsinop': '08434',
  'latitud': '373604N',
  'longitud': '005916W',
  'nombre': 'CARTAGENA',
  'provincia': 'MURCIA'},
 {'altitud': '265',
  'indicativo': '7145D',
  'indsinop': '08363',
  'latitud': '381358N',
  'longitud': '012250W',
  'nombre': 'CIEZA',
  'provincia': 'MURCIA'},
 {'altitud': '312',
  'indicativo': '7209',
  'indsinop': '08426',
  'latitud': '373917N',
  'longitud': '014114W',
  'nombre': 'LORCA',
  'provincia': 'MURCIA'},
 {'altitud': '61',
  'indicativo': '7178I',
  'indsinop': '08430',
  'latitud': '380007N',
  'longitud': '011015W',
  'nombre': 'MURCIA',
  'provincia': 'MURCIA'},
 {'altitud': '4',
  'indicativo': '7031',
  'indsinop': '08433',
  'latitud': '374720N',
  'longitud': '004812W',
  'nombre': 'SAN JAVIER AEROPUERTO',
  'provincia': 'MURCIA'},
 {'altitud': '4',
  'indicativo': '7031X',
  'indsinop': '08433',
  'latitud': '374642N',
  'longitud': '004821W',
  'nombre': 'SAN JAVIER AEROPUERTO',
  'provincia': 'MURCIA'},
 {'altitud': '640',
  'indicativo': '7275C',
  'indsinop': '08356',
  'latitud': '383606N',
  'longitud': '010935W',
  'nombre': 'YECLA',
  'provincia': 'MURCIA'},
 {'altitud': '572',
  'indicativo': '9263X',
  'indsinop': '08089',
  'latitud': '424634N',
  'longitud': '013157W',
  'nombre': 'ARANGUREN, ILUNDAIN  ',
  'provincia': 'NAVARRA'},
 {'altitud': '295',
  'indicativo': '9294E',
  'indsinop': '08087',
  'latitud': '421155N',
  'longitud': '012831W',
  'nombre': 'BARDENAS REALES, BASE AÉREA ',
  'provincia': 'NAVARRA'},
 {'altitud': '183',
  'indicativo': '1002Y',
  'indsinop': '08030',
  'latitud': '430809N',
  'longitud': '013235W',
  'nombre': 'BAZTAN, IRURITA ',
  'provincia': 'NAVARRA'},
 {'altitud': '268',
  'indicativo': '9283X',
  'indsinop': '08153',
  'latitud': '421225N',
  'longitud': '014241W',
  'nombre': 'CADREITA',
  'provincia': 'NAVARRA'},
 {'altitud': '459',
  'indicativo': '9263D',
  'indsinop': '08085',
  'latitud': '424637N',
  'longitud': '013900W',
  'nombre': 'PAMPLONA AEROPUERTO',
  'provincia': 'NAVARRA'},
 {'altitud': '450',
  'indicativo': '9262',
  'indsinop': '',
  'latitud': '424904N',
  'longitud': '013818W',
  'nombre': 'PAMPLONA',
  'provincia': 'NAVARRA'},
 {'altitud': '840',
  'indicativo': '1631E',
  'indsinop': '08051',
  'latitud': '422022N',
  'longitud': '071657W',
  'nombre': 'A POBRA DE TRIVES',
  'provincia': 'OURENSE'},
 {'altitud': '400',
  'indicativo': '1700X',
  'indsinop': '08047',
  'latitud': '422517N',
  'longitud': '080533W',
  'nombre': 'CARBALLIÑO, O',
  'provincia': 'OURENSE'},
 {'altitud': '148',
  'indicativo': '1690B',
  'indsinop': '',
  'latitud': '421956N',
  'longitud': '075152W',
  'nombre': 'OURENSE,INSTITUTO',
  'provincia': 'OURENSE'},
 {'altitud': '143',
  'indicativo': '1690A',
  'indsinop': '08048',
  'latitud': '421931N',
  'longitud': '075135W',
  'nombre': 'OURENSE',
  'provincia': 'OURENSE'},
 {'altitud': '616',
  'indicativo': '1735X',
  'indsinop': '08050',
  'latitud': '420445N',
  'longitud': '074401W',
  'nombre': 'XINZO DE LIMIA',
  'provincia': 'OURENSE'},
 {'altitud': '874',
  'indicativo': '2400E',
  'indsinop': '08072',
  'latitud': '415944N',
  'longitud': '043610W',
  'nombre': 'AUTILLA DEL PINO',
  'provincia': 'PALENCIA'},
 {'altitud': '830',
  'indicativo': '2374X',
  'indsinop': '08068',
  'latitud': '422103N',
  'longitud': '043702W',
  'nombre': 'CARRIÓN DE LOS CONDES',
  'provincia': 'PALENCIA'},
 {'altitud': '1140',
  'indicativo': '2235U',
  'indsinop': '08058',
  'latitud': '425214N',
  'longitud': '043112W',
  'nombre': 'CERVERA DE PISUERGA',
  'provincia': 'PALENCIA'},
 {'altitud': '750',
  'indicativo': '2401',
  'indsinop': '',
  'latitud': '420018N',
  'longitud': '043145W',
  'nombre': 'PALENCIA, OBSERVATORIO',
  'provincia': 'PALENCIA'},
 {'altitud': '19',
  'indicativo': '1484',
  'indsinop': '',
  'latitud': '422550N',
  'longitud': '083850W',
  'nombre': 'PONTEVEDRA, INSTITUTO',
  'provincia': 'PONTEVEDRA'},
 {'altitud': '108',
  'indicativo': '1484C',
  'indsinop': '08044',
  'latitud': '422618N',
  'longitud': '083657W',
  'nombre': 'PONTEVEDRA',
  'provincia': 'PONTEVEDRA'},
 {'altitud': '261',
  'indicativo': '1495',
  'indsinop': '08045',
  'latitud': '421419N',
  'longitud': '083726W',
  'nombre': 'VIGO AEROPUERTO',
  'provincia': 'PONTEVEDRA'},
 {'altitud': '1960',
  'indicativo': '2491C',
  'indsinop': '08205',
  'latitud': '402118N',
  'longitud': '054124W',
  'nombre': 'LA COVATILLA, ESTACIÓN DE ESQUÍ',
  'provincia': 'SALAMANCA'},
 {'altitud': '680',
  'indicativo': '2946X',
  'indsinop': '08195',
  'latitud': '403806N',
  'longitud': '063600W',
  'nombre': 'SAELICES EL CHICO',
  'provincia': 'SALAMANCA'},
 {'altitud': '790',
  'indicativo': '2867',
  'indsinop': '08202',
  'latitud': '405734N',
  'longitud': '052954W',
  'nombre': 'SALAMANCA AEROPUERTO',
  'provincia': 'SALAMANCA'},
 {'altitud': '775',
  'indicativo': '2870',
  'indsinop': '08201',
  'latitud': '405727N',
  'longitud': '053944W',
  'nombre': 'SALAMANCA',
  'provincia': 'SALAMANCA'},
 {'altitud': '769',
  'indicativo': '2916A',
  'indsinop': '08129',
  'latitud': '410041N',
  'longitud': '062616W',
  'nombre': 'VITIGUDINO',
  'provincia': 'SALAMANCA'},
 {'altitud': '1860',
  'indicativo': '2150H',
  'indsinop': '08143',
  'latitud': '411131N',
  'longitud': '032831W',
  'nombre': 'LA PINILLA, ESTACIÓN DE ESQUÍ',
  'provincia': 'SEGOVIA'},
 {'altitud': '990',
  'indicativo': '2465A',
  'indsinop': '',
  'latitud': '405648N',
  'longitud': '040657W',
  'nombre': 'SEGOVIA, INSTITUTO',
  'provincia': 'SEGOVIA'},
 {'altitud': '1005',
  'indicativo': '2465',
  'indsinop': '08213',
  'latitud': '405643N',
  'longitud': '040735W',
  'nombre': 'SEGOVIA',
  'provincia': 'SEGOVIA'},
 {'altitud': '550',
  'indicativo': '5704B',
  'indsinop': '08392',
  'latitud': '375535N',
  'longitud': '054611W',
  'nombre': 'CAZALLA DE LA SIERRA',
  'provincia': 'SEVILLA'},
 {'altitud': '130',
  'indicativo': '5641X',
  'indsinop': '08395',
  'latitud': '373058N',
  'longitud': '050506W',
  'nombre': 'ÉCIJA',
  'provincia': 'SEVILLA'},
 {'altitud': '410',
  'indicativo': '5612B',
  'indsinop': '08399',
  'latitud': '371140N',
  'longitud': '044612W',
  'nombre': 'LA RODA DE ANDALUCÍA',
  'provincia': 'SEVILLA'},
 {'altitud': '87',
  'indicativo': '5796',
  'indsinop': '08397',
  'latitud': '370952N',
  'longitud': '053641W',
  'nombre': 'MORÓN DE LA FRONTERA',
  'provincia': 'SEVILLA'},
 {'altitud': '34',
  'indicativo': '5783',
  'indsinop': '08391',
  'latitud': '372500N',
  'longitud': '055245W',
  'nombre': 'SEVILLA AEROPUERTO',
  'provincia': 'SEVILLA'},
 {'altitud': '1082',
  'indicativo': '2030',
  'indsinop': '08148',
  'latitud': '414630N',
  'longitud': '022859W',
  'nombre': 'SORIA',
  'provincia': 'SORIA'},
 {'altitud': '115',
  'indicativo': 'C439J',
  'indsinop': '60018',
  'latitud': '281906N',
  'longitud': '162256W',
  'nombre': 'GÜÍMAR',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '32',
  'indicativo': 'C929I',
  'indsinop': '60001',
  'latitud': '274908N',
  'longitud': '175320W',
  'nombre': 'HIERRO AEROPUERTO',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '2371',
  'indicativo': 'C430E',
  'indsinop': '60010',
  'latitud': '281832N',
  'longitud': '162958W',
  'nombre': 'IZAÑA',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '33',
  'indicativo': 'C139E',
  'indsinop': '60005',
  'latitud': '283759N',
  'longitud': '174518W',
  'nombre': 'LA PALMA AEROPUERTO',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '25',
  'indicativo': 'C459Z',
  'indsinop': '60012',
  'latitud': '282505N',
  'longitud': '163253W',
  'nombre': 'PUERTO DE LA CRUZ',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '15',
  'indicativo': 'C329Z',
  'indsinop': '60008',
  'latitud': '280523N',
  'longitud': '170641W',
  'nombre': 'SAN SEBASTIÁN DE LA GOMERA',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '35',
  'indicativo': 'C449C',
  'indsinop': '60020',
  'latitud': '282748N',
  'longitud': '161519W',
  'nombre': 'STA.CRUZ DE TENERIFE',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '62',
  'indicativo': 'C129Z',
  'indsinop': '60004',
  'latitud': '283545N',
  'longitud': '175455W',
  'nombre': 'TAZACORTE',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '632',
  'indicativo': 'C447A',
  'indsinop': '60015',
  'latitud': '282839N',
  'longitud': '161946W',
  'nombre': 'TENERIFE NORTE AEROPUERTO',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '64',
  'indicativo': 'C429I',
  'indsinop': '60025',
  'latitud': '280249N',
  'longitud': '163340W',
  'nombre': 'TENERIFE SUR AEROPUERTO',
  'provincia': 'STA. CRUZ DE TENERIFE'},
 {'altitud': '71',
  'indicativo': '0016A',
  'indsinop': '08175',
  'latitud': '410842N',
  'longitud': '010949E',
  'nombre': 'REUS AEROPUERTO',
  'provincia': 'TARRAGONA'},
 {'altitud': '1',
  'indicativo': '9987P',
  'indsinop': '08240',
  'latitud': '404157N',
  'longitud': '004836E',
  'nombre': "SANT JAUME D'ENVEJA",
  'provincia': 'TARRAGONA'},
 {'altitud': '50',
  'indicativo': '9981A',
  'indsinop': '08238',
  'latitud': '404913N',
  'longitud': '002936E',
  'nombre': 'TORTOSA',
  'provincia': 'TARRAGONA'},
 {'altitud': '32',
  'indicativo': '0002I',
  'indsinop': '08169',
  'latitud': '405729N',
  'longitud': '005217E',
  'nombre': 'VANDELLÒS  ',
  'provincia': 'TARRAGONA'},
 {'altitud': '334',
  'indicativo': '9573X',
  'indsinop': '08164',
  'latitud': '410329N',
  'longitud': '000830W',
  'nombre': 'ALCAÑIZ',
  'provincia': 'TERUEL'},
 {'altitud': '932',
  'indicativo': '9381',
  'indsinop': '',
  'latitud': '405154N',
  'longitud': '011818W',
  'nombre': 'CALAMOCHA, AERÓDROMO',
  'provincia': 'TERUEL'},
 {'altitud': '890',
  'indicativo': '9381I',
  'indsinop': '08233',
  'latitud': '405534N',
  'longitud': '011736W',
  'nombre': 'CALAMOCHA',
  'provincia': 'TERUEL'},
 {'altitud': '466',
  'indicativo': '9569A',
  'indsinop': '08166',
  'latitud': '405648N',
  'longitud': '001416W',
  'nombre': 'CALANDA',
  'provincia': 'TERUEL'},
 {'altitud': '900',
  'indicativo': '8368U',
  'indsinop': '08235',
  'latitud': '402102N',
  'longitud': '010727W',
  'nombre': 'TERUEL',
  'provincia': 'TERUEL'},
 {'altitud': '690',
  'indicativo': '4067',
  'indsinop': '08273',
  'latitud': '392931N',
  'longitud': '033142W',
  'nombre': 'MADRIDEJOS',
  'provincia': 'TOLEDO'},
 {'altitud': '691',
  'indicativo': '4061X',
  'indsinop': '08275',
  'latitud': '393551N',
  'longitud': '030249W',
  'nombre': 'QUINTANAR DE LA ORDEN',
  'provincia': 'TOLEDO'},
 {'altitud': '917',
  'indicativo': '3298X',
  'indsinop': '08270',
  'latitud': '393249N',
  'longitud': '042102W',
  'nombre': 'SAN PABLO DE LOS MONTES',
  'provincia': 'TOLEDO'},
 {'altitud': '372',
  'indicativo': '3365A',
  'indsinop': '08274',
  'latitud': '395731N',
  'longitud': '045149W',
  'nombre': 'TALAVERA DE LA REINA',
  'provincia': 'TOLEDO'},
 {'altitud': '540',
  'indicativo': '3259',
  'indsinop': '',
  'latitud': '395134N',
  'longitud': '040132W',
  'nombre': 'TOLEDO, LORENZANA',
  'provincia': 'TOLEDO'},
 {'altitud': '515',
  'indicativo': '3260B',
  'indsinop': '08272',
  'latitud': '395305N',
  'longitud': '040243W',
  'nombre': 'TOLEDO',
  'provincia': 'TOLEDO'},
 {'altitud': '5',
  'indicativo': '8058X',
  'indsinop': '08282',
  'latitud': '385544N',
  'longitud': '000545W',
  'nombre': 'OLIVA',
  'provincia': 'VALENCIA'},
 {'altitud': '12',
  'indicativo': '8325X',
  'indsinop': '08287',
  'latitud': '391105N',
  'longitud': '002219W',
  'nombre': 'POLINYÀ DE XÚQUER',
  'provincia': 'VALENCIA'},
 {'altitud': '758',
  'indicativo': '8309X',
  'indsinop': '08281',
  'latitud': '393432N',
  'longitud': '011441W',
  'nombre': 'UTIEL',
  'provincia': 'VALENCIA'},
 {'altitud': '56',
  'indicativo': '8414A',
  'indsinop': '08284',
  'latitud': '392906N',
  'longitud': '002829W',
  'nombre': 'VALENCIA AEROPUERTO',
  'provincia': 'VALENCIA'},
 {'altitud': '11',
  'indicativo': '8416',
  'indsinop': '08285',
  'latitud': '392850N',
  'longitud': '002159W',
  'nombre': 'VALENCIA',
  'provincia': 'VALENCIA'},
 {'altitud': '11',
  'indicativo': '8416Y',
  'indsinop': '08285',
  'latitud': '392850N',
  'longitud': '002159W',
  'nombre': 'VALENCIA',
  'provincia': 'VALENCIA'},
 {'altitud': '88',
  'indicativo': '8293X',
  'indsinop': '08290',
  'latitud': '390006N',
  'longitud': '003125W',
  'nombre': 'XÀTIVA',
  'provincia': 'VALENCIA'},
 {'altitud': '740',
  'indicativo': '2503X',
  'indsinop': '08142',
  'latitud': '411933N',
  'longitud': '044113W',
  'nombre': 'OLMEDO',
  'provincia': 'VALLADOLID'},
 {'altitud': '846',
  'indicativo': '2539',
  'indsinop': '08140',
  'latitud': '414243N',
  'longitud': '045120W',
  'nombre': 'VALLADOLID AEROPUERTO',
  'provincia': 'VALLADOLID'},
 {'altitud': '735',
  'indicativo': '2422',
  'indsinop': '08141',
  'latitud': '413827N',
  'longitud': '044516W',
  'nombre': 'VALLADOLID',
  'provincia': 'VALLADOLID'},
 {'altitud': '715',
  'indicativo': '2755X',
  'indsinop': '08056',
  'latitud': '420039N',
  'longitud': '054000W',
  'nombre': 'BENAVENTE',
  'provincia': 'ZAMORA'},
 {'altitud': '850',
  'indicativo': '2775X',
  'indsinop': '08125',
  'latitud': '415629N',
  'longitud': '061647W',
  'nombre': 'VILLARDECIERVOS',
  'provincia': 'ZAMORA'},
 {'altitud': '656',
  'indicativo': '2614',
  'indsinop': '08130',
  'latitud': '413056N',
  'longitud': '054407W',
  'nombre': 'ZAMORA',
  'provincia': 'ZAMORA'},
 {'altitud': '357',
  'indicativo': '9576C',
  'indsinop': '08165',
  'latitud': '413121N',
  'longitud': '001028W',
  'nombre': 'BUJARALOZ',
  'provincia': 'ZARAGOZA'},
 {'altitud': '600',
  'indicativo': '9394X',
  'indsinop': '08156',
  'latitud': '411952N',
  'longitud': '013843W',
  'nombre': 'CALATAYUD',
  'provincia': 'ZARAGOZA'},
 {'altitud': '779',
  'indicativo': '9390',
  'indsinop': '08157',
  'latitud': '410652N',
  'longitud': '012436W',
  'nombre': 'DAROCA',
  'provincia': 'ZARAGOZA'},
 {'altitud': '626',
  'indicativo': '9244X',
  'indsinop': '08090',
  'latitud': '422927N',
  'longitud': '011249W',
  'nombre': 'SOS DEL REY CATÓLICO',
  'provincia': 'ZARAGOZA'},
 {'altitud': '249',
  'indicativo': '9434',
  'indsinop': '08160',
  'latitud': '413938N',
  'longitud': '010015W',
  'nombre': 'ZARAGOZA AEROPUERTO',
  'provincia': 'ZARAGOZA'},
 {'altitud': '254',
  'indicativo': '9434P',
  'indsinop': '08159',
  'latitud': '413715N',
  'longitud': '005606W',
  'nombre': 'ZARAGOZA, VALDESPARTERA',
  'provincia': 'ZARAGOZA'}]

Obtención de datos de una estación en concreto

Estación 111X situada en Santander


In [8]:
url = ("https://opendata.aemet.es/opendata/api/valores/climatologicos/diarios/datos"
       "/fechaini/2017-01-01T00:00:00UTC/fechafin/2017-01-31T23:59:59UTC/estacion/1111X")

r = requests.get(url, params=querystring, verify=False)
if r.status_code == requests.codes.OK:
    data_url = r.json()['datos']
    r_data = requests.get(data_url, params=querystring, verify=False)
    raw_data = r_data.json()

raw_data


Out[8]:
[{'altitud': '52',
  'dir': '21',
  'fecha': '2017-01-01',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '07:30',
  'horatmax': '13:40',
  'horatmin': '07:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1022,0',
  'presMin': '1010,6',
  'provincia': 'CANTABRIA',
  'racha': '6,4',
  'sol': '7,0',
  'tmax': '12,9',
  'tmed': '9,3',
  'tmin': '5,7',
  'velmedia': '2,8'},
 {'altitud': '52',
  'dir': '18',
  'fecha': '2017-01-02',
  'horaPresMax': '24',
  'horaPresMin': 'Varias',
  'horaracha': '06:30',
  'horatmax': '11:30',
  'horatmin': '02:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1015,4',
  'presMin': '1009,8',
  'provincia': 'CANTABRIA',
  'racha': '10,8',
  'sol': '6,6',
  'tmax': '14,1',
  'tmed': '10,3',
  'tmin': '6,5',
  'velmedia': '5,0'},
 {'altitud': '52',
  'dir': '08',
  'fecha': '2017-01-03',
  'horaPresMax': '23',
  'horaPresMin': '01',
  'horaracha': '02:20',
  'horatmax': '12:20',
  'horatmin': '08:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1020,9',
  'presMin': '1015,1',
  'provincia': 'CANTABRIA',
  'racha': '13,6',
  'sol': '7,2',
  'tmax': '10,6',
  'tmed': '8,4',
  'tmin': '6,3',
  'velmedia': '6,7'},
 {'altitud': '52',
  'dir': '07',
  'fecha': '2017-01-04',
  'horaPresMax': 'Varias',
  'horaPresMin': '00',
  'horaracha': '13:40',
  'horatmax': '12:40',
  'horatmin': '04:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1022,4',
  'presMin': '1020,5',
  'provincia': 'CANTABRIA',
  'racha': '7,5',
  'sol': '1,8',
  'tmax': '10,8',
  'tmed': '8,2',
  'tmin': '5,5',
  'velmedia': '3,6'},
 {'altitud': '52',
  'dir': '10',
  'fecha': '2017-01-05',
  'horaPresMax': 'Varias',
  'horaPresMin': '01',
  'horaracha': '12:30',
  'horatmax': '13:20',
  'horatmin': '07:30',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1025,0',
  'presMin': '1022,0',
  'provincia': 'CANTABRIA',
  'racha': '13,3',
  'sol': '8,5',
  'tmax': '10,6',
  'tmed': '8,0',
  'tmin': '5,4',
  'velmedia': '6,9'},
 {'altitud': '52',
  'dir': '09',
  'fecha': '2017-01-06',
  'horaPresMax': '23',
  'horaPresMin': '06',
  'horaracha': 'Varias',
  'horatmax': '12:20',
  'horatmin': 'Varias',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1026,4',
  'presMin': '1024,1',
  'provincia': 'CANTABRIA',
  'racha': '14,2',
  'sol': '8,6',
  'tmax': '9,2',
  'tmed': '6,7',
  'tmin': '4,2',
  'velmedia': '7,8'},
 {'altitud': '52',
  'dir': '08',
  'fecha': '2017-01-07',
  'horaPresMax': '10',
  'horaPresMin': '14',
  'horaracha': '14:50',
  'horatmax': '13:10',
  'horatmin': '05:20',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1027,3',
  'presMin': '1025,4',
  'provincia': 'CANTABRIA',
  'racha': '9,4',
  'sol': '8,3',
  'tmax': '10,3',
  'tmed': '6,6',
  'tmin': '2,8',
  'velmedia': '5,3'},
 {'altitud': '52',
  'dir': '10',
  'fecha': '2017-01-08',
  'horaPresMax': 'Varias',
  'horaPresMin': '06',
  'horaracha': '15:50',
  'horatmax': '13:20',
  'horatmin': '07:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1027,3',
  'presMin': '1025,4',
  'provincia': 'CANTABRIA',
  'racha': '13,6',
  'sol': '8,7',
  'tmax': '11,5',
  'tmed': '7,8',
  'tmin': '4,0',
  'velmedia': '5,3'},
 {'altitud': '52',
  'dir': '08',
  'fecha': '2017-01-09',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '14:10',
  'horatmax': '13:30',
  'horatmin': '06:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '9,4',
  'presMax': '1025,8',
  'presMin': '1017,5',
  'provincia': 'CANTABRIA',
  'racha': '8,1',
  'sol': '8,0',
  'tmax': '13,8',
  'tmed': '10,3',
  'tmin': '6,8',
  'velmedia': '2,2'},
 {'altitud': '52',
  'dir': '30',
  'fecha': '2017-01-10',
  'horaPresMax': '00',
  'horaPresMin': '05',
  'horaracha': '06:50',
  'horatmax': '03:30',
  'horatmin': '00:30',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '11,2',
  'presMax': '1017,5',
  'presMin': '1013,1',
  'provincia': 'CANTABRIA',
  'racha': '19,7',
  'sol': '0,0',
  'tmax': '12,0',
  'tmed': '10,8',
  'tmin': '9,7',
  'velmedia': '9,4'},
 {'altitud': '52',
  'dir': '28',
  'fecha': '2017-01-11',
  'horaPresMax': 'Varias',
  'horaPresMin': '03',
  'horaracha': '06:30',
  'horatmax': 'Varias',
  'horatmin': '00:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,2',
  'presMax': '1020,7',
  'presMin': '1016,3',
  'provincia': 'CANTABRIA',
  'racha': '16,7',
  'sol': '0,0',
  'tmax': '12,9',
  'tmed': '12,0',
  'tmin': '11,2',
  'velmedia': '8,3'},
 {'altitud': '52',
  'dir': '30',
  'fecha': '2017-01-12',
  'horaPresMax': '00',
  'horaPresMin': '15',
  'horaracha': '19:40',
  'horatmax': '18:20',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '3,4',
  'presMax': '1020,1',
  'presMin': '1011,5',
  'provincia': 'CANTABRIA',
  'racha': '23,9',
  'sol': '0,1',
  'tmax': '13,4',
  'tmed': '11,8',
  'tmin': '10,1',
  'velmedia': '4,7'},
 {'altitud': '52',
  'dir': '31',
  'fecha': '2017-01-13',
  'horaPresMax': '23',
  'horaPresMin': '00',
  'horaracha': '00:50',
  'horatmax': '13:00',
  'horatmin': '08:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '3,4',
  'presMax': '1020,4',
  'presMin': '1015,4',
  'provincia': 'CANTABRIA',
  'racha': '25,3',
  'sol': '3,3',
  'tmax': '10,7',
  'tmed': '9,2',
  'tmin': '7,7',
  'velmedia': '10,8'},
 {'altitud': '52',
  'dir': '34',
  'fecha': '2017-01-14',
  'horaPresMax': '23',
  'horaPresMin': '00',
  'horaracha': '20:20',
  'horatmax': 'Varias',
  'horatmin': '05:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '8,4',
  'presMax': '1024,0',
  'presMin': '1020,2',
  'provincia': 'CANTABRIA',
  'racha': '21,7',
  'sol': '2,2',
  'tmax': '10,3',
  'tmed': '8,5',
  'tmin': '6,7',
  'velmedia': '7,5'},
 {'altitud': '52',
  'dir': '36',
  'fecha': '2017-01-15',
  'horaPresMax': '11',
  'horaPresMin': '02',
  'horaracha': '04:10',
  'horatmax': '12:00',
  'horatmin': '04:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '4,0',
  'presMax': '1025,3',
  'presMin': '1023,4',
  'provincia': 'CANTABRIA',
  'racha': '15,8',
  'sol': '0,1',
  'tmax': '11,6',
  'tmed': '10,3',
  'tmin': '9,0',
  'velmedia': '7,8'},
 {'altitud': '52',
  'dir': '31',
  'fecha': '2017-01-16',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '03:40',
  'horatmax': '13:00',
  'horatmin': '04:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '8,2',
  'presMax': '1023,6',
  'presMin': '1019,5',
  'provincia': 'CANTABRIA',
  'racha': '16,4',
  'sol': '0,1',
  'tmax': '12,1',
  'tmed': '11,0',
  'tmin': '10,0',
  'velmedia': '7,8'},
 {'altitud': '52',
  'dir': '03',
  'fecha': '2017-01-17',
  'horaPresMax': '10',
  'horaPresMin': '02',
  'horaracha': '02:20',
  'horatmax': '01:00',
  'horatmin': '16:30',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1023,5',
  'presMin': '1018,7',
  'provincia': 'CANTABRIA',
  'racha': '14,4',
  'sol': '4,1',
  'tmax': '11,0',
  'tmed': '8,6',
  'tmin': '6,2',
  'velmedia': '6,9'},
 {'altitud': '52',
  'dir': '04',
  'fecha': '2017-01-18',
  'horaPresMax': '10',
  'horaPresMin': '14',
  'horaracha': '03:30',
  'horatmax': '00:00',
  'horatmin': '15:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 'Ip',
  'presMax': '1021,7',
  'presMin': '1019,7',
  'provincia': 'CANTABRIA',
  'racha': '13,9',
  'sol': '0,0',
  'tmax': '6,7',
  'tmed': '5,6',
  'tmin': '4,5',
  'velmedia': '6,4'},
 {'altitud': '52',
  'dir': '10',
  'fecha': '2017-01-19',
  'horaPresMax': '00',
  'horaPresMin': 'Varias',
  'horaracha': '18:10',
  'horatmax': '13:50',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1020,0',
  'presMin': '1017,7',
  'provincia': 'CANTABRIA',
  'racha': '10,6',
  'sol': '3,4',
  'tmax': '8,3',
  'tmed': '5,6',
  'tmin': '2,8',
  'velmedia': '3,6'},
 {'altitud': '52',
  'dir': '08',
  'fecha': '2017-01-20',
  'horaPresMax': '02',
  'horaPresMin': 'Varias',
  'horaracha': '16:00',
  'horatmax': '12:40',
  'horatmin': '07:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1018,2',
  'presMin': '1015,1',
  'provincia': 'CANTABRIA',
  'racha': '11,7',
  'sol': '8,6',
  'tmax': '8,7',
  'tmed': '5,4',
  'tmin': '2,2',
  'velmedia': '6,4'},
 {'altitud': '52',
  'dir': '20',
  'fecha': '2017-01-21',
  'horaPresMax': '11',
  'horaPresMin': '14',
  'horaracha': 'Varias',
  'horatmax': '15:10',
  'horatmin': '00:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1015,8',
  'presMin': '1013,7',
  'provincia': 'CANTABRIA',
  'racha': '5,3',
  'sol': '5,0',
  'tmax': '10,9',
  'tmed': '7,6',
  'tmin': '4,3',
  'velmedia': '2,2'},
 {'altitud': '52',
  'dir': '99',
  'fecha': '2017-01-22',
  'horaPresMax': '23',
  'horaPresMin': 'Varias',
  'horaracha': 'Varias',
  'horatmax': '14:10',
  'horatmin': '01:20',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1017,1',
  'presMin': '1014,3',
  'provincia': 'CANTABRIA',
  'racha': '5,3',
  'sol': '3,3',
  'tmax': '11,3',
  'tmed': '8,8',
  'tmin': '6,2',
  'velmedia': '2,8'},
 {'altitud': '52',
  'dir': '26',
  'fecha': '2017-01-23',
  'horaPresMax': '23',
  'horaPresMin': '02',
  'horaracha': '11:10',
  'horatmax': '13:00',
  'horatmin': 'Varias',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1019,9',
  'presMin': '1016,4',
  'provincia': 'CANTABRIA',
  'racha': '10,0',
  'sol': '5,4',
  'tmax': '11,0',
  'tmed': '9,0',
  'tmin': '6,9',
  'velmedia': '4,2'},
 {'altitud': '52',
  'dir': '08',
  'fecha': '2017-01-24',
  'horaPresMax': '11',
  'horaPresMin': '24',
  'horaracha': '18:20',
  'horatmax': '14:10',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1021,9',
  'presMin': '1019,2',
  'provincia': 'CANTABRIA',
  'racha': '8,3',
  'sol': '8,5',
  'tmax': '11,4',
  'tmed': '8,4',
  'tmin': '5,3',
  'velmedia': '3,3'},
 {'altitud': '52',
  'dir': '08',
  'fecha': '2017-01-25',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '15:10',
  'horatmax': '12:50',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1019,2',
  'presMin': '1010,1',
  'provincia': 'CANTABRIA',
  'racha': '11,7',
  'sol': '9,2',
  'tmax': '9,9',
  'tmed': '6,8',
  'tmin': '3,7',
  'velmedia': '6,7'},
 {'altitud': '52',
  'dir': '19',
  'fecha': '2017-01-26',
  'horaPresMax': '00',
  'horaPresMin': '18',
  'horaracha': '17:30',
  'horatmax': '14:00',
  'horatmin': '06:20',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 'Ip',
  'presMax': '1010,1',
  'presMin': '998,3',
  'provincia': 'CANTABRIA',
  'racha': '19,7',
  'sol': '3,7',
  'tmax': '14,1',
  'tmed': '7,7',
  'tmin': '1,3',
  'velmedia': '7,2'},
 {'altitud': '52',
  'dir': '26',
  'fecha': '2017-01-27',
  'horaPresMax': '24',
  'horaPresMin': '05',
  'horaracha': '19:40',
  'horatmax': '14:50',
  'horatmin': '19:40',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '8,6',
  'presMax': '1008,3',
  'presMin': '997,0',
  'provincia': 'CANTABRIA',
  'racha': '17,2',
  'sol': '1,4',
  'tmax': '13,6',
  'tmed': '11,2',
  'tmin': '8,7',
  'velmedia': '6,9'},
 {'altitud': '52',
  'dir': '26',
  'fecha': '2017-01-28',
  'horaPresMax': '19',
  'horaPresMin': '00',
  'horaracha': '13:00',
  'horatmax': '11:20',
  'horatmin': '06:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1016,3',
  'presMin': '1008,3',
  'provincia': 'CANTABRIA',
  'racha': '12,2',
  'sol': '5,1',
  'tmax': '13,2',
  'tmed': '10,5',
  'tmin': '7,8',
  'velmedia': '5,3'},
 {'altitud': '52',
  'dir': '20',
  'fecha': '2017-01-29',
  'horaPresMax': '00',
  'horaPresMin': '15',
  'horaracha': '11:30',
  'horatmax': '15:20',
  'horatmin': '01:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1014,9',
  'presMin': '1009,4',
  'provincia': 'CANTABRIA',
  'racha': '13,1',
  'sol': '3,2',
  'tmax': '17,4',
  'tmed': '13,2',
  'tmin': '9,0',
  'velmedia': '4,4'},
 {'altitud': '52',
  'dir': '19',
  'fecha': '2017-01-30',
  'horaPresMax': '01',
  'horaPresMin': '23',
  'horaracha': '21:00',
  'horatmax': '15:30',
  'horatmin': '05:40',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 'Ip',
  'presMax': '1013,0',
  'presMin': '1005,1',
  'provincia': 'CANTABRIA',
  'racha': '13,9',
  'sol': '0,4',
  'tmax': '18,7',
  'tmed': '15,2',
  'tmin': '11,7',
  'velmedia': '4,2'},
 {'altitud': '52',
  'dir': '19',
  'fecha': '2017-01-31',
  'horaPresMax': '23',
  'horaPresMin': 'Varias',
  'horaracha': '06:00',
  'horatmax': '13:40',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': '0,0',
  'presMax': '1006,3',
  'presMin': '1004,6',
  'provincia': 'CANTABRIA',
  'racha': '12,2',
  'sol': '7,3',
  'tmax': '20,8',
  'tmed': '16,2',
  'tmin': '11,7',
  'velmedia': '4,7'}]

Limpiamos los datos

Se puede ver como los datos que devuelve la api vienen en formato string y con ',' como separador decimal, lo más cómodo será convertirlos:


In [9]:
def parse_data(raw_data):
    
    data = []
    for d in raw_data:
        d = dict(d)  # Exto copia el parámetro
        for param in ['prec', 'presMax', 'presMin', 'racha', 'sol', 'tmax', 'tmed', 'tmin', 'velmedia', 'altitud', 'dir']:
            try:
                d[param] = float(d[param].replace(',', '.'))
            except:
                d[param] = None
        data.append(d)
    
    return data

In [10]:
data = parse_data(raw_data)
data


Out[10]:
[{'altitud': 52.0,
  'dir': 21.0,
  'fecha': '2017-01-01',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '07:30',
  'horatmax': '13:40',
  'horatmin': '07:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1022.0,
  'presMin': 1010.6,
  'provincia': 'CANTABRIA',
  'racha': 6.4,
  'sol': 7.0,
  'tmax': 12.9,
  'tmed': 9.3,
  'tmin': 5.7,
  'velmedia': 2.8},
 {'altitud': 52.0,
  'dir': 18.0,
  'fecha': '2017-01-02',
  'horaPresMax': '24',
  'horaPresMin': 'Varias',
  'horaracha': '06:30',
  'horatmax': '11:30',
  'horatmin': '02:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1015.4,
  'presMin': 1009.8,
  'provincia': 'CANTABRIA',
  'racha': 10.8,
  'sol': 6.6,
  'tmax': 14.1,
  'tmed': 10.3,
  'tmin': 6.5,
  'velmedia': 5.0},
 {'altitud': 52.0,
  'dir': 8.0,
  'fecha': '2017-01-03',
  'horaPresMax': '23',
  'horaPresMin': '01',
  'horaracha': '02:20',
  'horatmax': '12:20',
  'horatmin': '08:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1020.9,
  'presMin': 1015.1,
  'provincia': 'CANTABRIA',
  'racha': 13.6,
  'sol': 7.2,
  'tmax': 10.6,
  'tmed': 8.4,
  'tmin': 6.3,
  'velmedia': 6.7},
 {'altitud': 52.0,
  'dir': 7.0,
  'fecha': '2017-01-04',
  'horaPresMax': 'Varias',
  'horaPresMin': '00',
  'horaracha': '13:40',
  'horatmax': '12:40',
  'horatmin': '04:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1022.4,
  'presMin': 1020.5,
  'provincia': 'CANTABRIA',
  'racha': 7.5,
  'sol': 1.8,
  'tmax': 10.8,
  'tmed': 8.2,
  'tmin': 5.5,
  'velmedia': 3.6},
 {'altitud': 52.0,
  'dir': 10.0,
  'fecha': '2017-01-05',
  'horaPresMax': 'Varias',
  'horaPresMin': '01',
  'horaracha': '12:30',
  'horatmax': '13:20',
  'horatmin': '07:30',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1025.0,
  'presMin': 1022.0,
  'provincia': 'CANTABRIA',
  'racha': 13.3,
  'sol': 8.5,
  'tmax': 10.6,
  'tmed': 8.0,
  'tmin': 5.4,
  'velmedia': 6.9},
 {'altitud': 52.0,
  'dir': 9.0,
  'fecha': '2017-01-06',
  'horaPresMax': '23',
  'horaPresMin': '06',
  'horaracha': 'Varias',
  'horatmax': '12:20',
  'horatmin': 'Varias',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1026.4,
  'presMin': 1024.1,
  'provincia': 'CANTABRIA',
  'racha': 14.2,
  'sol': 8.6,
  'tmax': 9.2,
  'tmed': 6.7,
  'tmin': 4.2,
  'velmedia': 7.8},
 {'altitud': 52.0,
  'dir': 8.0,
  'fecha': '2017-01-07',
  'horaPresMax': '10',
  'horaPresMin': '14',
  'horaracha': '14:50',
  'horatmax': '13:10',
  'horatmin': '05:20',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1027.3,
  'presMin': 1025.4,
  'provincia': 'CANTABRIA',
  'racha': 9.4,
  'sol': 8.3,
  'tmax': 10.3,
  'tmed': 6.6,
  'tmin': 2.8,
  'velmedia': 5.3},
 {'altitud': 52.0,
  'dir': 10.0,
  'fecha': '2017-01-08',
  'horaPresMax': 'Varias',
  'horaPresMin': '06',
  'horaracha': '15:50',
  'horatmax': '13:20',
  'horatmin': '07:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1027.3,
  'presMin': 1025.4,
  'provincia': 'CANTABRIA',
  'racha': 13.6,
  'sol': 8.7,
  'tmax': 11.5,
  'tmed': 7.8,
  'tmin': 4.0,
  'velmedia': 5.3},
 {'altitud': 52.0,
  'dir': 8.0,
  'fecha': '2017-01-09',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '14:10',
  'horatmax': '13:30',
  'horatmin': '06:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 9.4,
  'presMax': 1025.8,
  'presMin': 1017.5,
  'provincia': 'CANTABRIA',
  'racha': 8.1,
  'sol': 8.0,
  'tmax': 13.8,
  'tmed': 10.3,
  'tmin': 6.8,
  'velmedia': 2.2},
 {'altitud': 52.0,
  'dir': 30.0,
  'fecha': '2017-01-10',
  'horaPresMax': '00',
  'horaPresMin': '05',
  'horaracha': '06:50',
  'horatmax': '03:30',
  'horatmin': '00:30',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 11.2,
  'presMax': 1017.5,
  'presMin': 1013.1,
  'provincia': 'CANTABRIA',
  'racha': 19.7,
  'sol': 0.0,
  'tmax': 12.0,
  'tmed': 10.8,
  'tmin': 9.7,
  'velmedia': 9.4},
 {'altitud': 52.0,
  'dir': 28.0,
  'fecha': '2017-01-11',
  'horaPresMax': 'Varias',
  'horaPresMin': '03',
  'horaracha': '06:30',
  'horatmax': 'Varias',
  'horatmin': '00:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.2,
  'presMax': 1020.7,
  'presMin': 1016.3,
  'provincia': 'CANTABRIA',
  'racha': 16.7,
  'sol': 0.0,
  'tmax': 12.9,
  'tmed': 12.0,
  'tmin': 11.2,
  'velmedia': 8.3},
 {'altitud': 52.0,
  'dir': 30.0,
  'fecha': '2017-01-12',
  'horaPresMax': '00',
  'horaPresMin': '15',
  'horaracha': '19:40',
  'horatmax': '18:20',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 3.4,
  'presMax': 1020.1,
  'presMin': 1011.5,
  'provincia': 'CANTABRIA',
  'racha': 23.9,
  'sol': 0.1,
  'tmax': 13.4,
  'tmed': 11.8,
  'tmin': 10.1,
  'velmedia': 4.7},
 {'altitud': 52.0,
  'dir': 31.0,
  'fecha': '2017-01-13',
  'horaPresMax': '23',
  'horaPresMin': '00',
  'horaracha': '00:50',
  'horatmax': '13:00',
  'horatmin': '08:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 3.4,
  'presMax': 1020.4,
  'presMin': 1015.4,
  'provincia': 'CANTABRIA',
  'racha': 25.3,
  'sol': 3.3,
  'tmax': 10.7,
  'tmed': 9.2,
  'tmin': 7.7,
  'velmedia': 10.8},
 {'altitud': 52.0,
  'dir': 34.0,
  'fecha': '2017-01-14',
  'horaPresMax': '23',
  'horaPresMin': '00',
  'horaracha': '20:20',
  'horatmax': 'Varias',
  'horatmin': '05:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 8.4,
  'presMax': 1024.0,
  'presMin': 1020.2,
  'provincia': 'CANTABRIA',
  'racha': 21.7,
  'sol': 2.2,
  'tmax': 10.3,
  'tmed': 8.5,
  'tmin': 6.7,
  'velmedia': 7.5},
 {'altitud': 52.0,
  'dir': 36.0,
  'fecha': '2017-01-15',
  'horaPresMax': '11',
  'horaPresMin': '02',
  'horaracha': '04:10',
  'horatmax': '12:00',
  'horatmin': '04:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 4.0,
  'presMax': 1025.3,
  'presMin': 1023.4,
  'provincia': 'CANTABRIA',
  'racha': 15.8,
  'sol': 0.1,
  'tmax': 11.6,
  'tmed': 10.3,
  'tmin': 9.0,
  'velmedia': 7.8},
 {'altitud': 52.0,
  'dir': 31.0,
  'fecha': '2017-01-16',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '03:40',
  'horatmax': '13:00',
  'horatmin': '04:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 8.2,
  'presMax': 1023.6,
  'presMin': 1019.5,
  'provincia': 'CANTABRIA',
  'racha': 16.4,
  'sol': 0.1,
  'tmax': 12.1,
  'tmed': 11.0,
  'tmin': 10.0,
  'velmedia': 7.8},
 {'altitud': 52.0,
  'dir': 3.0,
  'fecha': '2017-01-17',
  'horaPresMax': '10',
  'horaPresMin': '02',
  'horaracha': '02:20',
  'horatmax': '01:00',
  'horatmin': '16:30',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1023.5,
  'presMin': 1018.7,
  'provincia': 'CANTABRIA',
  'racha': 14.4,
  'sol': 4.1,
  'tmax': 11.0,
  'tmed': 8.6,
  'tmin': 6.2,
  'velmedia': 6.9},
 {'altitud': 52.0,
  'dir': 4.0,
  'fecha': '2017-01-18',
  'horaPresMax': '10',
  'horaPresMin': '14',
  'horaracha': '03:30',
  'horatmax': '00:00',
  'horatmin': '15:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': None,
  'presMax': 1021.7,
  'presMin': 1019.7,
  'provincia': 'CANTABRIA',
  'racha': 13.9,
  'sol': 0.0,
  'tmax': 6.7,
  'tmed': 5.6,
  'tmin': 4.5,
  'velmedia': 6.4},
 {'altitud': 52.0,
  'dir': 10.0,
  'fecha': '2017-01-19',
  'horaPresMax': '00',
  'horaPresMin': 'Varias',
  'horaracha': '18:10',
  'horatmax': '13:50',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1020.0,
  'presMin': 1017.7,
  'provincia': 'CANTABRIA',
  'racha': 10.6,
  'sol': 3.4,
  'tmax': 8.3,
  'tmed': 5.6,
  'tmin': 2.8,
  'velmedia': 3.6},
 {'altitud': 52.0,
  'dir': 8.0,
  'fecha': '2017-01-20',
  'horaPresMax': '02',
  'horaPresMin': 'Varias',
  'horaracha': '16:00',
  'horatmax': '12:40',
  'horatmin': '07:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1018.2,
  'presMin': 1015.1,
  'provincia': 'CANTABRIA',
  'racha': 11.7,
  'sol': 8.6,
  'tmax': 8.7,
  'tmed': 5.4,
  'tmin': 2.2,
  'velmedia': 6.4},
 {'altitud': 52.0,
  'dir': 20.0,
  'fecha': '2017-01-21',
  'horaPresMax': '11',
  'horaPresMin': '14',
  'horaracha': 'Varias',
  'horatmax': '15:10',
  'horatmin': '00:10',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1015.8,
  'presMin': 1013.7,
  'provincia': 'CANTABRIA',
  'racha': 5.3,
  'sol': 5.0,
  'tmax': 10.9,
  'tmed': 7.6,
  'tmin': 4.3,
  'velmedia': 2.2},
 {'altitud': 52.0,
  'dir': 99.0,
  'fecha': '2017-01-22',
  'horaPresMax': '23',
  'horaPresMin': 'Varias',
  'horaracha': 'Varias',
  'horatmax': '14:10',
  'horatmin': '01:20',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1017.1,
  'presMin': 1014.3,
  'provincia': 'CANTABRIA',
  'racha': 5.3,
  'sol': 3.3,
  'tmax': 11.3,
  'tmed': 8.8,
  'tmin': 6.2,
  'velmedia': 2.8},
 {'altitud': 52.0,
  'dir': 26.0,
  'fecha': '2017-01-23',
  'horaPresMax': '23',
  'horaPresMin': '02',
  'horaracha': '11:10',
  'horatmax': '13:00',
  'horatmin': 'Varias',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1019.9,
  'presMin': 1016.4,
  'provincia': 'CANTABRIA',
  'racha': 10.0,
  'sol': 5.4,
  'tmax': 11.0,
  'tmed': 9.0,
  'tmin': 6.9,
  'velmedia': 4.2},
 {'altitud': 52.0,
  'dir': 8.0,
  'fecha': '2017-01-24',
  'horaPresMax': '11',
  'horaPresMin': '24',
  'horaracha': '18:20',
  'horatmax': '14:10',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1021.9,
  'presMin': 1019.2,
  'provincia': 'CANTABRIA',
  'racha': 8.3,
  'sol': 8.5,
  'tmax': 11.4,
  'tmed': 8.4,
  'tmin': 5.3,
  'velmedia': 3.3},
 {'altitud': 52.0,
  'dir': 8.0,
  'fecha': '2017-01-25',
  'horaPresMax': '00',
  'horaPresMin': '24',
  'horaracha': '15:10',
  'horatmax': '12:50',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1019.2,
  'presMin': 1010.1,
  'provincia': 'CANTABRIA',
  'racha': 11.7,
  'sol': 9.2,
  'tmax': 9.9,
  'tmed': 6.8,
  'tmin': 3.7,
  'velmedia': 6.7},
 {'altitud': 52.0,
  'dir': 19.0,
  'fecha': '2017-01-26',
  'horaPresMax': '00',
  'horaPresMin': '18',
  'horaracha': '17:30',
  'horatmax': '14:00',
  'horatmin': '06:20',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': None,
  'presMax': 1010.1,
  'presMin': 998.3,
  'provincia': 'CANTABRIA',
  'racha': 19.7,
  'sol': 3.7,
  'tmax': 14.1,
  'tmed': 7.7,
  'tmin': 1.3,
  'velmedia': 7.2},
 {'altitud': 52.0,
  'dir': 26.0,
  'fecha': '2017-01-27',
  'horaPresMax': '24',
  'horaPresMin': '05',
  'horaracha': '19:40',
  'horatmax': '14:50',
  'horatmin': '19:40',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 8.6,
  'presMax': 1008.3,
  'presMin': 997.0,
  'provincia': 'CANTABRIA',
  'racha': 17.2,
  'sol': 1.4,
  'tmax': 13.6,
  'tmed': 11.2,
  'tmin': 8.7,
  'velmedia': 6.9},
 {'altitud': 52.0,
  'dir': 26.0,
  'fecha': '2017-01-28',
  'horaPresMax': '19',
  'horaPresMin': '00',
  'horaracha': '13:00',
  'horatmax': '11:20',
  'horatmin': '06:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1016.3,
  'presMin': 1008.3,
  'provincia': 'CANTABRIA',
  'racha': 12.2,
  'sol': 5.1,
  'tmax': 13.2,
  'tmed': 10.5,
  'tmin': 7.8,
  'velmedia': 5.3},
 {'altitud': 52.0,
  'dir': 20.0,
  'fecha': '2017-01-29',
  'horaPresMax': '00',
  'horaPresMin': '15',
  'horaracha': '11:30',
  'horatmax': '15:20',
  'horatmin': '01:50',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1014.9,
  'presMin': 1009.4,
  'provincia': 'CANTABRIA',
  'racha': 13.1,
  'sol': 3.2,
  'tmax': 17.4,
  'tmed': 13.2,
  'tmin': 9.0,
  'velmedia': 4.4},
 {'altitud': 52.0,
  'dir': 19.0,
  'fecha': '2017-01-30',
  'horaPresMax': '01',
  'horaPresMin': '23',
  'horaracha': '21:00',
  'horatmax': '15:30',
  'horatmin': '05:40',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': None,
  'presMax': 1013.0,
  'presMin': 1005.1,
  'provincia': 'CANTABRIA',
  'racha': 13.9,
  'sol': 0.4,
  'tmax': 18.7,
  'tmed': 15.2,
  'tmin': 11.7,
  'velmedia': 4.2},
 {'altitud': 52.0,
  'dir': 19.0,
  'fecha': '2017-01-31',
  'horaPresMax': '23',
  'horaPresMin': 'Varias',
  'horaracha': '06:00',
  'horatmax': '13:40',
  'horatmin': '23:59',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1006.3,
  'presMin': 1004.6,
  'provincia': 'CANTABRIA',
  'racha': 12.2,
  'sol': 7.3,
  'tmax': 20.8,
  'tmed': 16.2,
  'tmin': 11.7,
  'velmedia': 4.7}]

Haciendo una petición más grande

La api limita el número de días de los que puede dar información en una misma petición por lo que se queremos obtener datos de un periodo de tiempo largo, necesitamos hacer varias peticiones.

Escribir a mano la fecha inicial y final no es una opción, por lo que usaremos el módulo datetime para generar grupos de 30 días consecutivos:


In [11]:
import datetime

Generamos una lista con las fechas que vamos a utilizar para las peticiones


In [12]:
start_date = datetime.datetime(2015, 1, 1, 0, 0, 0)
final_date = datetime.datetime(2015, 4, 1, 0, 0, 0)
step = datetime.timedelta(days=30)

chunks = [start_date]

next_date = start_date + step

while next_date < final_date:
    chunks.append(next_date)
    next_date += step
    
chunks.append(final_date)

chunks


Out[12]:
[datetime.datetime(2015, 1, 1, 0, 0),
 datetime.datetime(2015, 1, 31, 0, 0),
 datetime.datetime(2015, 3, 2, 0, 0),
 datetime.datetime(2015, 4, 1, 0, 0)]

In [13]:
# Lo encapsulamos en una función
def generate_chunks(start_date, final_date, step):

    chunks = [start_date]

    next_date = start_date + step

    while next_date < final_date:
        chunks.append(next_date)
        next_date += step

    chunks.append(final_date)

    return chunks

In [14]:
for ii in range(1, len(chunks)):
    print(chunks[ii-1].strftime('%Y-%m-%dT%H:%M:%SUTC'),
          " - ",
          chunks[ii].strftime('%Y-%m-%dT%H:%M:%SUTC'))


2015-01-01T00:00:00UTC  -  2015-01-31T00:00:00UTC
2015-01-31T00:00:00UTC  -  2015-03-02T00:00:00UTC
2015-03-02T00:00:00UTC  -  2015-04-01T00:00:00UTC

In [15]:
import time

In [16]:
start_date = datetime.datetime(2012, 1, 4, 0, 0, 0)
final_date = datetime.datetime(2016, 12, 31, 23, 59, 59)
step = datetime.timedelta(days=30)

chunks = generate_chunks(start_date, final_date, step)

raw_data = []

station = '1111X'


for ii in range(1, len(chunks)):
    print()
    print(chunks[ii-1].strftime('%Y-%m-%dT%H:%M:%SUTC'),
          " - ",
          chunks[ii].strftime('%Y-%m-%dT%H:%M:%SUTC'))

    url = ("https://opendata.aemet.es/opendata/api/valores/climatologicos/diarios/datos/"
           "fechaini/{start}/fechafin/{end}/estacion/{station}".format(
               start=chunks[ii-1].strftime('%Y-%m-%dT%H:%M:%SUTC'),
                end=chunks[ii].strftime('%Y-%m-%dT%H:%M:%SUTC'),
                station=station)
          )
    
    iterate = True
    
    while iterate:

        r = requests.get(url, params=querystring, verify=False)
        
        # Si no me deja hacer la conexión, la repito  
        iterate = (r.status_code == requests.codes.too_many_requests)
        
        print(r.json())

        # Chequeo si la petición ha ido bien    
        if r.status_code == requests.codes.ok:
            # Hago la request para obtener los datos
            data_url = r.json()['datos']
            r_data = requests.get(data_url, params=querystring, verify=False)
            
            # INCONSISTENCIA DE LA API:
            # Cuando no encuentra datos en el rango seleccionado, la API devuelve
            # que el status code es 200 (todo ok) y devuelve un json con el error
            # cuando encuentra, no hay atributo estado            
            try:
                estado = r_data.json()['estado']
            except:
                estado = 200
                
                
            # Si ha ido bien guardo los datos
            if estado == requests.codes.ok:
#                 print(r_data.json())
                raw_data.extend(r_data.json())
            else:
                print(r_data.json()['descripcion'])
        else:
            print(r.json()['descripcion'])

        time.sleep(60/45)


2012-01-04T00:00:00UTC  -  2012-02-03T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/a751dd44', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}
No hay datos que satisfagan esos criterios

2012-02-03T00:00:00UTC  -  2012-03-04T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/2f3a78e4', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-03-04T00:00:00UTC  -  2012-04-03T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/ce5b795a', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-04-03T00:00:00UTC  -  2012-05-03T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/6b7a6e61', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-05-03T00:00:00UTC  -  2012-06-02T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/1ea53a2c', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-06-02T00:00:00UTC  -  2012-07-02T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/98d1761c', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-07-02T00:00:00UTC  -  2012-08-01T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/7e6ba9b2', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-08-01T00:00:00UTC  -  2012-08-31T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/4ade07f2', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-08-31T00:00:00UTC  -  2012-09-30T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/ada376a8', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-09-30T00:00:00UTC  -  2012-10-30T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/1da22646', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-10-30T00:00:00UTC  -  2012-11-29T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/205a431c', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-11-29T00:00:00UTC  -  2012-12-29T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/4083c395', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2012-12-29T00:00:00UTC  -  2013-01-28T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/dc465621', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-01-28T00:00:00UTC  -  2013-02-27T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/661b1354', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-02-27T00:00:00UTC  -  2013-03-29T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/795c3abd', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-03-29T00:00:00UTC  -  2013-04-28T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/b7c2e13b', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-04-28T00:00:00UTC  -  2013-05-28T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/38c3029c', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-05-28T00:00:00UTC  -  2013-06-27T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/38ffba88', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-06-27T00:00:00UTC  -  2013-07-27T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/8ed0a859', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-07-27T00:00:00UTC  -  2013-08-26T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/e6e1c3ec', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-08-26T00:00:00UTC  -  2013-09-25T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/10feeff0', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-09-25T00:00:00UTC  -  2013-10-25T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/d95d5a90', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-10-25T00:00:00UTC  -  2013-11-24T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/81007a00', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-11-24T00:00:00UTC  -  2013-12-24T00:00:00UTC
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'datos': 'https://opendata.aemet.es/opendata/sh/25b04342', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2013-12-24T00:00:00UTC  -  2014-01-23T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/8c173c9f', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-01-23T00:00:00UTC  -  2014-02-22T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/e9ed0252', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-02-22T00:00:00UTC  -  2014-03-24T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/2ad7aa71', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-03-24T00:00:00UTC  -  2014-04-23T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/32d1b6f2', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-04-23T00:00:00UTC  -  2014-05-23T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/213cb2d0', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-05-23T00:00:00UTC  -  2014-06-22T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/f55e7d24', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-06-22T00:00:00UTC  -  2014-07-22T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/b67c4482', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-07-22T00:00:00UTC  -  2014-08-21T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/a5b7b774', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-08-21T00:00:00UTC  -  2014-09-20T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/d7a1556c', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-09-20T00:00:00UTC  -  2014-10-20T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/ebe48879', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-10-20T00:00:00UTC  -  2014-11-19T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/8c2576ce', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-11-19T00:00:00UTC  -  2014-12-19T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/77e00c56', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2014-12-19T00:00:00UTC  -  2015-01-18T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/e4eb87c6', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-01-18T00:00:00UTC  -  2015-02-17T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/50f7c2f3', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-02-17T00:00:00UTC  -  2015-03-19T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/16f562ee', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-03-19T00:00:00UTC  -  2015-04-18T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/661c10b9', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-04-18T00:00:00UTC  -  2015-05-18T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/10143dad', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-05-18T00:00:00UTC  -  2015-06-17T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/3b93013c', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-06-17T00:00:00UTC  -  2015-07-17T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/8944e373', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-07-17T00:00:00UTC  -  2015-08-16T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/b4e98736', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-08-16T00:00:00UTC  -  2015-09-15T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/1e625ee0', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-09-15T00:00:00UTC  -  2015-10-15T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/32fd1839', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-10-15T00:00:00UTC  -  2015-11-14T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/2a47c406', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-11-14T00:00:00UTC  -  2015-12-14T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/9111f232', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2015-12-14T00:00:00UTC  -  2016-01-13T00:00:00UTC
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'estado': 429, 'descripcion': 'Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.'}
Límite de peticiones o caudal por minuto excedido para este usuario. Espere al siguiente minuto.
{'datos': 'https://opendata.aemet.es/opendata/sh/d35fcaac', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-01-13T00:00:00UTC  -  2016-02-12T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/b3ccf450', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-02-12T00:00:00UTC  -  2016-03-13T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/91677c3d', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-03-13T00:00:00UTC  -  2016-04-12T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/852e3857', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-04-12T00:00:00UTC  -  2016-05-12T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/f96971c5', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-05-12T00:00:00UTC  -  2016-06-11T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/c33c8e23', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-06-11T00:00:00UTC  -  2016-07-11T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/e4194c49', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-07-11T00:00:00UTC  -  2016-08-10T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/16b58994', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-08-10T00:00:00UTC  -  2016-09-09T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/fac9b46f', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-09-09T00:00:00UTC  -  2016-10-09T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/39fc2c95', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-10-09T00:00:00UTC  -  2016-11-08T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/56322d90', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-11-08T00:00:00UTC  -  2016-12-08T00:00:00UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/a1dad947', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

2016-12-08T00:00:00UTC  -  2016-12-31T23:59:59UTC
{'datos': 'https://opendata.aemet.es/opendata/sh/199e4d2b', 'estado': 200, 'metadatos': 'https://opendata.aemet.es/opendata/sh/b3aa9d28', 'descripcion': 'exito'}

In [17]:
data = parse_data(raw_data)

data[:2]


Out[17]:
[{'altitud': 52.0,
  'dir': 7.0,
  'fecha': '2012-03-01',
  'horaPresMax': '11',
  'horaPresMin': 'Varias',
  'horaracha': '15:20',
  'horatmax': '11:00',
  'horatmin': '07:40',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1017.3,
  'presMin': 1015.6,
  'provincia': 'CANTABRIA',
  'racha': 7.5,
  'sol': 9.1,
  'tmax': 13.4,
  'tmed': 11.0,
  'tmin': 8.6,
  'velmedia': 4.2},
 {'altitud': 52.0,
  'dir': 28.0,
  'fecha': '2012-03-02',
  'horaPresMax': '23',
  'horaPresMin': '14',
  'horaracha': '17:30',
  'horatmax': '15:00',
  'horatmin': '03:00',
  'indicativo': '1111X',
  'nombre': 'SANTANDER',
  'prec': 0.0,
  'presMax': 1019.3,
  'presMin': 1015.6,
  'provincia': 'CANTABRIA',
  'racha': 7.8,
  'sol': 3.5,
  'tmax': 12.6,
  'tmed': 10.8,
  'tmin': 9.1,
  'velmedia': 3.3}]

Uniendo los datos en un dataframe

Salvando y leyendo csvs


In [18]:
import pandas as pd

In [19]:
pd.DataFrame(data[100], index=[0])


Out[19]:
altitud dir fecha horaPresMax horaPresMin horaracha horatmax horatmin indicativo nombre prec presMax presMin provincia racha sol tmax tmed tmin velmedia
0 52.0 28.0 2012-06-05 00 16 23:40 13:10 04:10 1111X SANTANDER 0.0 1012.4 1007.5 CANTABRIA 7.2 11.9 20.8 17.2 13.5 1.9

In [20]:
dfs = []
for ii in range(len(data)):
    dfs.append(pd.DataFrame(data[ii], index=[ii]))
    
df = pd.concat(dfs)

In [21]:
df


Out[21]:
altitud dir fecha horaPresMax horaPresMin horaracha horatmax horatmin indicativo nombre prec presMax presMin provincia racha sol tmax tmed tmin velmedia
0 52.0 7 2012-03-01 11 Varias 15:20 11:00 07:40 1111X SANTANDER 0 1017.3 1015.6 CANTABRIA 7.5 9.1 13.4 11.0 8.6 4.2
1 52.0 28 2012-03-02 23 14 17:30 15:00 03:00 1111X SANTANDER 0 1019.3 1015.6 CANTABRIA 7.8 3.5 12.6 10.8 9.1 3.3
2 52.0 99 2012-03-03 17 04 13:40 12:00 06:00 1111X SANTANDER 0.8 1021.3 1017.8 CANTABRIA 7.2 6.8 17.8 13.7 9.6 2.5
3 52.0 33 2012-03-04 24 07 14:10 11:30 23:59 1111X SANTANDER 0.8 1026.9 1015.3 CANTABRIA 18.3 1.2 15.6 12.0 8.4 6.4
4 52.0 33 2012-03-04 24 07 14:10 11:30 23:59 1111X SANTANDER 0.8 1026.9 1015.3 CANTABRIA 18.3 1.2 15.6 12.0 8.4 6.4
5 52.0 35 2012-03-05 Varias 17 02:10 13:40 Varias 1111X SANTANDER 1 1027.3 1024.3 CANTABRIA 10.3 8.7 11.5 9.5 7.5 3.6
6 52.0 28 2012-03-06 00 17 12:40 13:50 07:00 1111X SANTANDER 0 1024.4 1021.5 CANTABRIA 7.8 8.9 11.7 8.9 6.1 3.6
7 52.0 29 2012-03-07 23 04 21:20 14:40 05:30 1111X SANTANDER 2.4 1025.4 1021.1 CANTABRIA 12.5 6.5 13.2 9.3 5.4 3.1
8 52.0 1 2012-03-08 Varias 00 02:10 13:10 23:59 1111X SANTANDER 0 1031.2 1025.3 CANTABRIA 12.8 6.3 13.1 10.8 8.6 5.8
9 52.0 8 2012-03-09 Varias 14 16:20 11:30 07:00 1111X SANTANDER 0 1031 1028.6 CANTABRIA 12.2 10.8 13.3 9.9 6.5 6.4
10 52.0 8 2012-03-10 01 16 16:50 10:40 07:00 1111X SANTANDER 0 1030.4 1028.3 CANTABRIA 9.2 11 14.1 10.6 7.2 5.3
11 52.0 4 2012-03-11 01 24 15:30 13:00 07:50 1111X SANTANDER 0 1029 1023.5 CANTABRIA 8.9 5.9 12.4 10.6 8.8 2.8
12 52.0 5 2012-03-12 00 Varias 14:00 13:00 23:40 1111X SANTANDER 0 1023.5 1019.5 CANTABRIA 7.8 8.7 13.5 11.2 9.0 4.2
13 52.0 3 2012-03-13 Varias 14 13:20 13:40 Varias 1111X SANTANDER 0 1019.7 1018.3 CANTABRIA 4.7 10.6 13.6 11.1 8.6 1.9
14 52.0 5 2012-03-14 Varias 04 14:10 00:00 03:20 1111X SANTANDER 0.2 1019.8 1017.8 CANTABRIA 4.7 0 10.8 9.6 8.5 1.7
15 52.0 99 2012-03-15 02 Varias Varias 12:40 01:30 1111X SANTANDER 0.2 1019.6 1017.8 CANTABRIA 5 0 11.9 10.4 8.8 1.7
16 52.0 27 2012-03-16 00 17 18:10 13:40 07:00 1111X SANTANDER 0 1018.3 1014.7 CANTABRIA 5.3 0 11.6 10.8 10.0 2.5
17 52.0 31 2012-03-17 00 12 14:10 11:30 23:59 1111X SANTANDER 8.2 1016.3 1012.1 CANTABRIA 15.8 4.2 16.2 12.0 7.7 3.6
18 52.0 28 2012-03-18 24 01 16:10 12:30 20:50 1111X SANTANDER 19.2 1024.1 1012.8 CANTABRIA 20.6 7.7 11.4 9.0 6.6 10.6
19 52.0 25 2012-03-19 22 00 00:30 14:10 06:00 1111X SANTANDER 4.4 1029.5 1023.9 CANTABRIA 14.7 4.8 11.2 8.6 5.9 4.4
20 52.0 5 2012-03-20 00 24 02:40 12:10 06:30 1111X SANTANDER 0 1029.3 1024.6 CANTABRIA 8.9 7.9 12.5 9.6 6.7 3.6
21 52.0 7 2012-03-21 00 24 10:10 11:10 23:59 1111X SANTANDER 0.8 1024.6 1015.4 CANTABRIA 8.6 0.4 11.9 9.6 7.3 1.9
22 52.0 11 2012-03-22 20 Varias 23:59 16:20 02:40 1111X SANTANDER 0 1017.3 1014.1 CANTABRIA 8.1 11.8 14.5 10.2 5.8 3.3
23 52.0 8 2012-03-23 00 19 13:10 12:00 05:20 1111X SANTANDER 0 1016.3 1009.6 CANTABRIA 12.5 10.4 15.1 11.4 7.6 6.4
24 52.0 19 2012-03-24 24 03 06:10 12:00 00:30 1111X SANTANDER 0 1015.2 1009.4 CANTABRIA 11.9 11.9 21.4 16.8 12.2 5
25 52.0 10 2012-03-25 10 00 17:30 14:20 06:00 1111X SANTANDER 0 1018.1 1015.1 CANTABRIA 8.6 11.7 17.3 14.6 11.9 3.9
26 52.0 8 2012-03-26 00 16 15:10 09:00 05:50 1111X SANTANDER 0 1016.6 1014.3 CANTABRIA 11.4 11.3 18.9 15.2 11.6 4.4
27 52.0 8 2012-03-27 23 02 18:10 11:50 05:40 1111X SANTANDER 0 1018.1 1015.5 CANTABRIA 13.6 11.6 22.0 17.9 13.8 5.8
28 52.0 8 2012-03-28 Varias Varias 15:20 09:20 23:50 1111X SANTANDER 0 1019.1 1016.4 CANTABRIA 9.4 11.6 20.4 15.9 11.4 3.1
29 52.0 27 2012-03-29 00 17 10:40 14:30 06:00 1111X SANTANDER 0 1016.4 1013.7 CANTABRIA 5.8 11.6 15.8 13.2 10.7 1.9
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
1796 52.0 19 2016-12-03 00 24 Varias 14:40 03:40 1111X SANTANDER 0 1007.8 1000.8 CANTABRIA 7.5 8 16.9 13.0 9.0 2.8
1797 52.0 18 2016-12-04 Varias 04 13:40 13:10 01:20 1111X SANTANDER 0 1007 1000.2 CANTABRIA 13.3 2.4 18.8 15.0 11.1 6.7
1798 52.0 18 2016-12-05 24 00 01:30 13:30 23:20 1111X SANTANDER 0 1016.3 1007 CANTABRIA 10.8 4.2 21.2 18.0 14.8 3.1
1799 52.0 10 2016-12-06 20 04 15:50 13:00 21:40 1111X SANTANDER 0 1020.7 1016.2 CANTABRIA 7.2 8.2 17.7 14.6 11.5 3.3
1800 52.0 16 2016-12-07 20 04 03:00 13:20 06:30 1111X SANTANDER 0 1021.6 1019.1 CANTABRIA 5 6.3 15.9 13.4 10.8 1.1
1801 52.0 21 2016-12-08 10 16 23:00 14:20 00:00 1111X SANTANDER 0 1023.3 1020.7 CANTABRIA 13.9 6 19.9 16.0 12.1 5
1802 52.0 21 2016-12-08 10 16 23:00 14:20 00:00 1111X SANTANDER 0 1023.3 1020.7 CANTABRIA 13.9 6 19.9 16.0 12.1 5
1803 52.0 20 2016-12-09 Varias Varias 02:20 12:30 22:50 1111X SANTANDER 0 1023.1 1020 CANTABRIA 13.6 7.7 17.7 14.8 11.8 4.4
1804 52.0 16 2016-12-10 00 21 20:00 12:30 07:30 1111X SANTANDER 0 1020.7 1018.7 CANTABRIA 5 7.5 17.0 13.7 10.4 1.4
1805 52.0 12 2016-12-11 11 Varias 18:30 12:00 01:30 1111X SANTANDER 0 1021.3 1018.4 CANTABRIA 6.4 2.7 19.3 15.1 10.9 2.8
1806 52.0 99 2016-12-12 10 24 Varias 12:30 08:20 1111X SANTANDER 0 1019.5 1016.6 CANTABRIA 5 7.8 18.1 14.6 11.0 2.5
1807 52.0 19 2016-12-13 00 24 20:00 13:40 05:00 1111X SANTANDER 0 1016.6 1010.3 CANTABRIA 14.2 8.1 14.8 12.2 9.6 1.9
1808 52.0 19 2016-12-14 21 05 06:40 12:20 21:40 1111X SANTANDER 0.8 1014.9 1008.1 CANTABRIA 14.7 2 17.9 14.0 10.2 5.8
1809 52.0 20 2016-12-15 01 23 21:10 15:00 07:40 1111X SANTANDER 0 1015 1006.2 CANTABRIA 15 6.6 16.4 13.6 10.8 4.7
1810 52.0 19 2016-12-16 24 01 00:50 13:20 23:40 1111X SANTANDER 0.1 1023.5 1006 CANTABRIA 17.2 1.4 13.9 12.0 10.2 3.9
1811 52.0 20 2016-12-17 21 00 05:10 13:30 02:40 1111X SANTANDER 0 1029.2 1023.5 CANTABRIA 6.7 2.7 14.1 12.1 10.1 3.1
1812 52.0 9 2016-12-18 00 24 18:40 13:10 23:40 1111X SANTANDER 0 1028.2 1018.6 CANTABRIA 9.7 7.9 13.9 10.7 7.5 4.2
1813 52.0 36 2016-12-19 00 24 Varias 13:10 03:20 1111X SANTANDER 2 1018.6 1012.8 CANTABRIA 12.2 0 11.7 9.2 6.8 3.3
1814 52.0 29 2016-12-20 24 01 21:00 23:59 09:00 1111X SANTANDER 5.8 1019.4 1012.7 CANTABRIA 12.5 0.6 12.5 10.5 8.5 4.2
1815 52.0 33 2016-12-21 21 00 02:10 11:20 06:10 1111X SANTANDER 6.8 1023.9 1019.2 CANTABRIA 13.3 0 13.9 12.3 10.7 2.2
1816 52.0 31 2016-12-22 24 Varias 19:30 14:00 00:30 1111X SANTANDER 0.2 1029.4 1023.4 CANTABRIA 6.9 0.1 16.3 13.9 11.5 2.2
1817 52.0 20 2016-12-23 23 Varias 21:40 11:20 04:20 1111X SANTANDER None 1030.9 1028.8 CANTABRIA 5.6 4.6 16.3 14.2 12.1 2.2
1818 52.0 20 2016-12-24 11 Varias 03:20 Varias 23:50 1111X SANTANDER 0 1032.8 1030.3 CANTABRIA 5.3 5.7 16.2 13.8 11.5 2.2
1819 52.0 9 2016-12-25 00 17 Varias 13:00 23:59 1111X SANTANDER 0 1031.3 1025.8 CANTABRIA 8.1 7.5 14.5 12.1 9.7 2.8
1820 52.0 10 2016-12-26 11 02 20:50 Varias 01:00 1111X SANTANDER 0 1029.5 1025.9 CANTABRIA 8.1 0 12.1 10.2 8.4 3.1
1821 52.0 9 2016-12-27 00 15 07:20 13:10 23:50 1111X SANTANDER 0 1028 1025 CANTABRIA 13.9 5.8 12.9 10.8 8.6 6.9
1822 52.0 27 2016-12-28 Varias 05 12:00 12:10 07:40 1111X SANTANDER 0 1028.2 1025.6 CANTABRIA 5.3 5.6 13.9 11.1 8.3 2.8
1823 52.0 99 2016-12-29 24 14 Varias 13:40 Varias 1111X SANTANDER 0 1028.9 1027.4 CANTABRIA 5.3 0 11.5 10.0 8.4 2.5
1824 52.0 8 2016-12-30 10 16 13:10 13:10 06:50 1111X SANTANDER 0 1029.3 1025.8 CANTABRIA 7.8 2.7 11.2 9.5 7.8 4.2
1825 52.0 18 2016-12-31 00 24 04:20 10:50 08:00 1111X SANTANDER 0 1025.9 1022 CANTABRIA 5.3 8 10.8 8.2 5.5 2.2

1826 rows × 20 columns


In [22]:
df.to_csv('../data/weather_data.csv', index=None)

In [23]:
data_df = pd.read_csv("../data/weather_data.csv", parse_dates=['fecha'])

In [24]:
data_df.head()


Out[24]:
altitud dir fecha horaPresMax horaPresMin horaracha horatmax horatmin indicativo nombre prec presMax presMin provincia racha sol tmax tmed tmin velmedia
0 52.0 7.0 2012-03-01 11 Varias 15:20 11:00 07:40 1111X SANTANDER 0.0 1017.3 1015.6 CANTABRIA 7.5 9.1 13.4 11.0 8.6 4.2
1 52.0 28.0 2012-03-02 23 14 17:30 15:00 03:00 1111X SANTANDER 0.0 1019.3 1015.6 CANTABRIA 7.8 3.5 12.6 10.8 9.1 3.3
2 52.0 99.0 2012-03-03 17 04 13:40 12:00 06:00 1111X SANTANDER 0.8 1021.3 1017.8 CANTABRIA 7.2 6.8 17.8 13.7 9.6 2.5
3 52.0 33.0 2012-03-04 24 07 14:10 11:30 23:59 1111X SANTANDER 0.8 1026.9 1015.3 CANTABRIA 18.3 1.2 15.6 12.0 8.4 6.4
4 52.0 33.0 2012-03-04 24 07 14:10 11:30 23:59 1111X SANTANDER 0.8 1026.9 1015.3 CANTABRIA 18.3 1.2 15.6 12.0 8.4 6.4

In [25]:
%matplotlib inline

In [26]:
ax = data_df.plot(x='fecha', y=['tmax', 'tmed', 'tmin'], figsize=(12, 6))


Representando los datos en Bokeh


In [27]:
from bokeh.io import output_notebook, show
from bokeh.charts import Line

In [28]:
output_notebook()


Loading BokehJS ...

In [29]:
show(Line(data_df[['presMin', 'presMax']]))