0Pricing
Learn AI with Python · Lección

Uso de API de datos públicos

OpenWeatherMap, Wikipedia y API gubernamentales públicas: ejemplos prácticos de recopilación de datos.

Uso de API de datos públicos es una lección gratuita de Learn AI with Python en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Learn AI with Python, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Learn AI with Python incluye 4 lecciones en total.

Práctica con APIs públicas

La mejor forma de aprender a recopilar datos es utilizar APIs reales. En esta lección se utilizan tres APIs accesibles:

  • JSONPlaceholder — una API REST ficticia para practicar, sin necesidad de ninguna clave
  • OpenWeatherMap — datos meteorológicos reales, con una clave de API gratuita
  • Wikipedia API — contenido y búsquedas de artículos

JSONPlaceholder para practicar

JSONPlaceholder ofrece publicaciones, usuarios y comentarios ficticios sin autenticación. Es perfecto para probar su código de solicitudes y análisis.

import requests

resp = requests.get("https://jsonplaceholder.typicode.com/posts", timeout=10)
resp.raise_for_status()
posts = resp.json()
print(len(posts), "posts")
print(posts[0]["title"])

De la respuesta al flujo de trabajo con DataFrame

El flujo de trabajo estándar es el siguiente: obtenga el JSON y cárguelo directamente en un DataFrame para analizarlo.

import pandas as pd

posts = requests.get("https://jsonplaceholder.typicode.com/posts", timeout=10).json()
df = pd.DataFrame(posts)
print(df.head())
print(df["userId"].value_counts())

OpenWeatherMap — cómo obtener una clave

OpenWeatherMap requiere una clave de API gratuita que se pasa como parámetro appid. Mantenga las claves fuera del código: léalas desde una variable de entorno.

import os

API_KEY = os.environ["OWM_API_KEY"]   # set OWM_API_KEY in your shell

OpenWeatherMap — parámetros de consulta

El endpoint del tiempo actual acepta q (ciudad), appid (clave) y units (métrico/imperial).

import requests, os

params = {
    "q": "Istanbul",
    "appid": os.environ["OWM_API_KEY"],
    "units": "metric",
}
resp = requests.get("https://api.openweathermap.org/data/2.5/weather", params=params, timeout=10)
resp.raise_for_status()
data = resp.json()

Extracción de campos JSON anidados

Las respuestas de las APIs reales están profundamente anidadas. Acceda a los datos mediante claves encadenadas y utilice .get() con valores predeterminados para los campos que podrían faltar.

temp = data["main"]["temp"]
humidity = data["main"]["humidity"]
desc = data["weather"][0]["description"]
print(f"{temp} C, {humidity}% humidity, {desc}")

Recopilación del tiempo de varias ciudades

Recorra las ciudades, aplane los campos que le interesen en una lista de diccionarios y, después, cree un DataFrame.

cities = ["Istanbul", "London", "Tokyo"]
rows = []
for c in cities:
    p = {"q": c, "appid": os.environ["OWM_API_KEY"], "units": "metric"}
    d = requests.get("https://api.openweathermap.org/data/2.5/weather", params=p, timeout=10).json()
    rows.append({"city": c, "temp": d["main"]["temp"], "desc": d["weather"][0]["description"]})
import pandas as pd
df = pd.DataFrame(rows)

La Wikipedia API

La Wikipedia API ofrece búsquedas y contenido de artículos. Espera un action y format=json, además de un encabezado User-Agent descriptivo.

params = {
    "action": "query",
    "list": "search",
    "srsearch": "machine learning",
    "format": "json",
}
headers = {"User-Agent": "data-collector/1.0 (you@example.com)"}
resp = requests.get("https://en.wikipedia.org/w/api.php", params=params, headers=headers, timeout=10)
results = resp.json()["query"]["search"]

Obtención de extractos de artículos

Utilice prop=extracts con exintro=True para obtener el párrafo introductorio de un artículo; resulta práctico para crear conjuntos de datos de texto.

params = {
    "action": "query",
    "prop": "extracts",
    "exintro": True,
    "explaintext": True,
    "titles": "Artificial intelligence",
    "format": "json",
}
resp = requests.get("https://en.wikipedia.org/w/api.php", params=params, timeout=10)
pages = resp.json()["query"]["pages"]
for pid, page in pages.items():
    print(page["extract"][:300])

Lectura de la documentación de una API

Cada API es diferente. Antes de programar, lea en la documentación cuál es la URL base, los parámetros obligatorios, el método de autenticación, la estructura de la respuesta y los límites de solicitudes.

Pruebe una solicitud de forma interactiva, inspeccione resp.json() y, después, cree el bucle basándose en la estructura real.

Uso responsable de las APIs

Las APIs públicas son recursos compartidos. Utilícelas de forma responsable:

  • Envíe un User-Agent identificativo
  • Almacene en caché los resultados para no volver a solicitar los mismos datos
  • Espere entre solicitudes y respete los límites de solicitudes
  • Lea y siga las condiciones de uso de cada API

Comprobación rápida: API de práctica

Quiere probar su código de solicitudes y análisis sin registrarse para obtener una clave de API.

Resumen: APIs de datos públicos

Ha practicado la recopilación de datos mediante APIs reales:

  • JSONPlaceholder para practicar sin autenticación
  • OpenWeatherMap con los parámetros q, appid y units, y una clave obtenida del entorno
  • Wikipedia API para buscar y obtener extractos de artículos
  • El flujo de trabajo de obtención a DataFrame y la forma de acceder a datos JSON anidados
  • Buenas prácticas: User-Agent, almacenamiento en caché, límites de solicitudes y condiciones de uso

Con esto termina la recopilación de datos. A continuación: expresiones regulares para la IA de texto.

Preguntas frecuentes

¿La lección «Uso de API de datos públicos» es gratis?

Sí — el texto completo de «Uso de API de datos públicos» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Learn AI with Python, actualiza a CoddyKit PRO. El curso de Learn AI with Python incluye 4 lecciones en total.

¿Qué aprenderé en «Uso de API de datos públicos»?

OpenWeatherMap, Wikipedia y API gubernamentales públicas: ejemplos prácticos de recopilación de datos. Practicas Learn AI with Python con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Learn AI with Python?

No se requiere experiencia previa. Learn AI with Python en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Uso de API de datos públicos»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Learn AI with Python?

Sí. Cada lección de Learn AI with Python incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Fundamentos de las API REST para recopilar datos
  2. Paginación y recopilación de grandes conjuntos de datos
  3. Almacenamiento eficiente de datos recopilados
  4. Uso de API de datos públicos
← Volver a Learn AI with Python