9.1 Trabajo con Google Maps API
Vamos a trabajar un poco con APIs públicas de servicios populares.
Por ejemplo, Google Maps API ofrece varios servicios, como geocodificación, obtención de rutas y ubicación. Para usar Google Maps API es necesario registrar una API-key.
Geocodificación (obtener coordenadas de una dirección)
import requests
API_KEY = 'YOUR_GOOGLE_MAPS_API_KEY'
address = '1600 Amphitheatre Parkway, Mountain View, CA'
url = f'https://maps.googleapis.com/maps/api/geocode/json?address={address}&key={API_KEY}'
response = requests.get(url)
data = response.json()
if data['status'] == 'OK':
location = data['results'][0]['geometry']['location']
lat = location['lat']
lng = location['lng']
print(f'Coordenadas: {lat}, {lng}')
else:
print('Error de geocodificación')
9.2 Trabajo con OpenWeatherMap API
Otro gran ejemplo es obtener el clima en cualquier parte del mundo.
El servicio OpenWeatherMap API proporciona datos meteorológicos en todo el mundo. Para usar la API, es necesario registrarse y obtener una API-key.
Obtención del clima actual
import requests
API_KEY = 'YOUR_OPENWEATHERMAP_API_KEY'
city = 'London'
url = f'http://api.openweathermap.org/data/2.5/weather?q={city}&appid={API_KEY}&units=metric'
response = requests.get(url)
data = response.json()
if response.status_code == 200:
weather = data['weather'][0]['description']
temp = data['main']['temp']
print(f'Clima en {city}: {weather}, temperatura: {temp}°C')
else:
print('Error al obtener datos del clima')
9.3 Trabajo con GitHub API
Ustedes son programadores, vamos a hacer algo más del mundo IT. Por ejemplo, podemos explorar los repositorios de GitHub.
GitHub API proporciona acceso a información sobre repositorios, usuarios y organizaciones.
Obtener información sobre un repositorio
import requests
repo_owner = 'octocat'
repo_name = 'Hello-World'
url = f'https://api.github.com/repos/{repo_owner}/{repo_name}'
response = requests.get(url)
data = response.json()
if response.status_code == 200:
print(f"Repositorio: {data['name']}")
print(f"Descripción: {data['description']}")
print(f"Estrellas: {data['stargazers_count']}")
else:
print('Error al obtener información del repositorio')
9.4 Trabajo con YouTube Data API
YouTube Data API permite obtener información sobre videos, canales y listas de reproducción. Para usar la API es necesario obtener una API-key.
import requests
API_KEY = 'YOUR_YOUTUBE_API_KEY'
video_id = 'Ks-_Mh1QhMc'
url = f'https://www.googleapis.com/youtube/v3/videos?id={video_id}&key={API_KEY}&part=snippet,contentDetails,statistics'
response = requests.get(url)
data = response.json()
if 'items' in data and len(data['items']) > 0:
video_info = data['items'][0]
title = video_info['snippet']['title']
views = video_info['statistics']['viewCount']
print(f'Título del video: {title}')
print(f'Vistas: {views}')
else:
print('Error al obtener información del video')
Open Notify API proporciona datos sobre la ubicación actual de la Estación Espacial Internacional (ISS).
Obteniendo la posición actual de la ISS
import requests
url = 'http://api.open-notify.org/iss-now.json'
response = requests.get(url)
data = response.json()
if response.status_code == 200:
position = data['iss_position']
print(f"La ISS está en las coordenadas: longitud {position['longitude']}, latitud {position['latitude']}")
else:
print('Error al obtener datos')
GO TO FULL VERSION