0Pricing
Learn AI with Python · Lezione

Utilizzo delle API pubbliche per i dati

OpenWeatherMap, Wikipedia e API pubbliche governative: esempi pratici di raccolta dati.

Utilizzo delle API pubbliche per i dati è una lezione Learn AI with Python gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Learn AI with Python, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Learn AI with Python include 4 lezioni in totale.

Esercitarsi con le API pubbliche

Il modo migliore per imparare a raccogliere dati è utilizzare API reali. In questa lezione ne utilizzerà tre, semplici da usare:

  • JSONPlaceholder — un'API REST fittizia per esercitarsi, senza bisogno di una chiave
  • OpenWeatherMap — dati meteorologici reali, con una chiave API gratuita
  • Wikipedia API — contenuti e ricerca di articoli

JSONPlaceholder per esercitarsi

JSONPlaceholder fornisce post, utenti e commenti fittizi senza autenticazione. È perfetto per testare il codice che invia richieste e analizza le risposte.

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"])

Dalla risposta al flusso di lavoro con DataFrame

Il flusso di lavoro standard consiste nel recuperare il JSON e caricarlo direttamente in un DataFrame per l'analisi.

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 — Ottenere una chiave

OpenWeatherMap richiede una chiave API gratuita, passata come parametro appid. Tenga le chiavi fuori dal codice: le legga da una variabile d'ambiente.

import os

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

OpenWeatherMap — Parametri della query

L'endpoint del meteo corrente accetta q (città), appid (chiave) e units (metrico/imperiale).

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()

Estrarre campi JSON annidati

Le risposte delle API reali sono profondamente annidate. Acceda ai dati tramite chiavi concatenate e utilizzi .get() con valori predefiniti per i campi che potrebbero mancare.

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

Raccogliere dati meteorologici per molte città

Scorra l'elenco delle città, appiattisca i campi di interesse in un elenco di dizionari, quindi crei 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)

L'API di Wikipedia

Wikipedia API espone la ricerca e i contenuti degli articoli. Richiede un action e format=json, oltre a un'intestazione User-Agent descrittiva.

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"]

Recuperare gli estratti degli articoli

Utilizzi prop=extracts con exintro=True per recuperare il paragrafo introduttivo di un articolo: è utile per creare dataset testuali.

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])

Leggere la documentazione delle API

Ogni API è diversa. Prima di scrivere il codice, legga nella documentazione: l'URL di base, i parametri obbligatori, il metodo di autenticazione, la struttura della risposta e i limiti di frequenza.

Provi interattivamente una richiesta, esamini resp.json(), quindi costruisca il ciclo sulla struttura reale.

Usare correttamente le API

Le API pubbliche sono risorse condivise. Le utilizzi nel rispetto delle regole:

  • Invii un User-Agent che la identifichi
  • Memorizzi nella cache i risultati, per non recuperare nuovamente gli stessi dati
  • Attenda tra una richiesta e l'altra e rispetti i limiti di frequenza
  • Legga e rispetti i termini di utilizzo di ogni API

Verifica rapida: API per esercitarsi

Desidera testare il codice che invia richieste e analizza le risposte senza registrarsi per ottenere una chiave API.

Riepilogo: API di dati pubblici

Ha fatto pratica nella raccolta di dati da API reali:

  • JSONPlaceholder per esercitarsi senza autenticazione
  • OpenWeatherMap con i parametri q, appid e units, oltre a una chiave letta dall'ambiente
  • Wikipedia API per la ricerca e gli estratti degli articoli
  • Il flusso di lavoro dal recupero al DataFrame e il modo di accedere ai dati JSON annidati
  • Buone pratiche: User-Agent, caching, limiti di frequenza e termini di utilizzo

La raccolta dei dati è completata. Prossimo argomento: le espressioni regolari per l'IA testuale.

Domande Frequenti

La lezione «Utilizzo delle API pubbliche per i dati» è gratuita?

Sì — il testo completo di «Utilizzo delle API pubbliche per i dati» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Learn AI with Python, passa a CoddyKit PRO. Il corso Learn AI with Python include 4 lezioni in totale.

Cosa imparerò in «Utilizzo delle API pubbliche per i dati»?

OpenWeatherMap, Wikipedia e API pubbliche governative: esempi pratici di raccolta dati. Eserciti Learn AI with Python con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Learn AI with Python?

Non è richiesta alcuna esperienza precedente. Learn AI with Python su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Utilizzo delle API pubbliche per i dati»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Learn AI with Python?

Sì. Ogni lezione Learn AI with Python include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Fondamenti delle API REST per la raccolta dei dati
  2. Paginazione e raccolta di grandi dataset
  3. Archiviazione efficiente dei dati raccolti
  4. Utilizzo delle API pubbliche per i dati
← Torna a Learn AI with Python