9.1 Lavorare con Google Maps API
Dai, lavoriamo un po' con le API pubbliche dei servizi più popolari.
Per esempio, Google Maps API offre diversi servizi, come la geocodifica, ottenere itinerari e localizzazione. Per utilizzare Google Maps API, è necessario registrare una chiave API.
Geocodifica (ottenere coordinate da un indirizzo)
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'Coordinate: {lat}, {lng}')
else:
print('Errore nella geocodifica')
9.2 Lavorare con OpenWeatherMap API
Un altro ottimo esempio è ottenere il meteo in qualsiasi parte del mondo.
Il servizio OpenWeatherMap API fornisce dati meteorologici in tutto il mondo. Per utilizzare l'API, è necessario registrarsi e ottenere una chiave API.
Ottenere il meteo attuale
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'Meteo a {city}: {weather}, temperatura: {temp}°C')
else:
print('Errore nel recupero dei dati meteorologici')
9.3 Lavorare con GitHub API
Siete programmatori, quindi facciamo qualcosa di più tecnico. Ad esempio, possiamo curiosare nei repository di GitHub.
GitHub API fornisce accesso a informazioni su repository, utenti e organizzazioni.
Ottenere informazioni su un repository
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"Repository: {data['name']}")
print(f"Descrizione: {data['description']}")
print(f"Stelle: {data['stargazers_count']}")
else:
print('Errore nel recupero delle informazioni sul repository')
9.4 Lavorare con YouTube Data API
YouTube Data API consente di ottenere informazioni su video, canali e playlist. Per utilizzare l'API, è necessaria una chiave API.
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'Titolo del video: {title}')
print(f'Visualizzazioni: {views}')
else:
print('Errore nel recupero delle informazioni sul video')
Open Notify API fornisce dati sulla posizione attuale della Stazione Spaziale Internazionale (ISS).
Ottenere la posizione attuale dell'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"L'ISS si trova alle coordinate: longitudine {position['longitude']}, latitudine {position['latitude']}")
else:
print('Errore nel recupero dei dati')
GO TO FULL VERSION