Questo articolo è stato pubblicato nell'ambito del Blogathon sulla scienza dei dati
introduzione
Ottenere dati completi e ad alte prestazioni non è sempre il caso del Machine Learning. Mentre si lavora su qualsiasi problema del mondo reale o si cerca di costruire qualsiasi tipo di progetto come Machine Learning Practioner, servono i dati.
Per soddisfare la necessità di dati per la maggior parte del tempo, è necessario ottenere dati dall'API e, se il sito web non fornisce l'API, l'unica opzione rimasta è Web Scraping.
In questo tutorial, impareremo come puoi usare l'API, estrarre i dati e salvare come frame di dati.
Sommario
- Ottenere dati da un'API
- Cos'è l'API
- Importanza dell'utilizzo dell'API
- Come ottenere un'API
- Codice pratico per estrarre i dati dall'API
- Ottenere dati utilizzando database SQL
- Nota finale
Ottenere dati da un'API
Cos'è l'API
API sta per Application Programming Interface. L'API funziona fondamentalmente come interfaccia tra due comunicazioni software. Adesso capiamo come?
Importanza dell'utilizzo dell'API
Considera un esempio, se dobbiamo prenotare un biglietto del treno, quindi abbiamo più opzioni come il sito Web IRCTC, Yatra, fare il mio viaggio, eccetera. Ora, queste sono tutte organizzazioni diverse, e supponiamo di avere un numero di posto riservato 15 dal carro B15, se qualcuno visita e cerca di prenotare lo stesso posto da un software diverso, Sarà riservato o no?? Verrà visualizzato come riservato.
Anche se sono aziende diverse, software diverso, sono in grado di condividere queste informazioni. Perciò, la condivisione delle informazioni avviene tra più siti web tramite API, ecco perché le API sono importanti.
Ogni organizzazione fornisce servizi su più sistemi operativi come ios, androide, che sono integrati con un unico Banca datiUn database è un insieme organizzato di informazioni che consente di archiviare, Gestisci e recupera i dati in modo efficiente. Utilizzato in varie applicazioni, Dai sistemi aziendali alle piattaforme online, I database possono essere relazionali o non relazionali. Una progettazione corretta è fondamentale per ottimizzare le prestazioni e garantire l'integrità delle informazioni, facilitando così il processo decisionale informato in diversi contesti..... Perciò, usano anche l'API per ottenere dati dal database a più applicazioni.
Ora capiamo praticamente come ottenere dati usando un frame di dati usando Python.
Come ottenere un'API?
Useremo il sito web ufficiale di TMDB, che fornisce diverse API per ottenere diversi tipi di dati. otterremo i dati dei film più votati nel nostro frame di dati. Per ottenere i dati, deve passare l'API.
Visitare il Sito TMDB e registrati e inizia sessioneIl "Sessione" È un concetto chiave nel campo della psicologia e della terapia. Si riferisce a un incontro programmato tra un terapeuta e un cliente, dove si esplorano i pensieri, Emozioni e comportamenti. Queste sessioni possono variare in durata e frequenza, e il suo scopo principale è quello di facilitare la crescita personale e la risoluzione dei problemi. L'efficacia delle sessioni dipende dalla relazione tra il terapeuta e il terapeuta.. con il tuo account Google. Successivamente, nella sezione del tuo profilo, visita le impostazioni. In pannelloUn panel è un gruppo di esperti che si riunisce per discutere e analizzare un argomento specifico. Questi forum sono comuni alle conferenze, seminari e dibattiti pubblici, dove i partecipanti condividono le loro conoscenze e prospettive. I pannelli possono riguardare una varietà di aree, Dalla scienza alla politica, e il suo obiettivo è quello di favorire lo scambio di idee e la riflessione critica tra i partecipanti.... Configurazione a sinistra, nell'ultima seconda opzione, puoi trovare un'opzione come API, basta fare clic su di esso e generare la tua API.
Usa la chiave API per ottenere i dati sui film più votati
Ora che hai la tua chiave API, visita il sito degli sviluppatori API TMDB che puoi vedere nella sezione API in alto. Fai clic su Film e il tour ottiene la valutazione più alta ora, nella migliore finestra di valutazione, visita l'opzione Prova ora, dove puoi vedere sul lato destro del pulsante di invio della richiesta, ha un link ai film più votati.
https://api.themoviedb.org/3/movie/top_rated?api_key=<<api_key>>&lingua=en-US&pagina=1
Copia il link e, invece della chiave API, incolla la chiave API che hai generato e apri il link, Sarai in grado di vedere dati simili a JSONJSON, o Notazione degli oggetti JavaScript, Si tratta di un formato di scambio dati leggero e facile da leggere e scrivere per gli esseri umani, e facile da analizzare e generare per le macchine. Viene comunemente utilizzato nelle applicazioni Web per inviare e ricevere informazioni tra un server e un client. La sua struttura si basa su coppie chiave-valore, rendendolo versatile e ampiamente adottato nello sviluppo di software...
Ora, per capire questi dati, ci sono diversi strumenti come il visualizzatore JSON. Se desideri, puoi aprirlo e incollare il codice nel visualizzatore. È un dizionario e le informazioni richieste sui film sono presenti nella chiave del risultato.
I dati totali sono presenti in 428 pagine e il numero totale di film è 8551. Perciò, dobbiamo creare un frame di dati che avrà 8551 righe e i campi che estrarremo sono id, titolo del film, data di rilascio, descrizione generale, popolarità, voto. media, conteggio dei voti. Perciò, il frame di dati che riceveremo avrà il modulo 8551 * 7.
Codice pratico per ottenere dati dall'API
Apri il tuo notebook Jupyter per scrivere il codice ed estrarre i dati nel frame di dati. Installa la libreria e le richieste dei panda se non usi il comando pip
pip installa panda pip richieste di installazione
Ora definisci la tua chiave API nel link ed effettua una richiesta al sito Web TMDB per estrarre i dati e salvare la risposta in un variabileIn statistica e matematica, un "variabile" è un simbolo che rappresenta un valore che può cambiare o variare. Esistono diversi tipi di variabili, e qualitativo, che descrivono caratteristiche non numeriche, e quantitativo, che rappresentano quantità numeriche. Le variabili sono fondamentali negli esperimenti e negli studi, poiché consentono l'analisi delle relazioni e dei modelli tra elementi diversi, facilitare la comprensione di fenomeni complessi.....
api_key = la tua chiave API
collegamento = "https://api.themoviedb.org/3/movie/top_rated?api_key=<<api_key>>&lingua=en-US&pagina=1"
risposta = request.get(collegamento)
Non dimenticare di menzionare la tua chiave API nel link. E dopo aver eseguito il codice sopra, si stampa la risposta, puoi vedere la risposta in 200, il che significa che tutto funziona bene e hai i dati sotto forma di JSON.
I dati che vogliamo sono nei risultati chiave, quindi prova a stampare la chiave del risultato.
risposta.json()["risultati"]
Per creare il frame di dati delle colonne richieste, possiamo usare il frame di dati dei panda e otterrà il frame di dati da 20 classifica che ha i migliori film sulla pagina 1.
data = pd.DataFrame(risposta.json()["risultati"])[['ID','titolo','panoramica','popolarità','data di rilascio','voto_media','vote_count']]
Vogliamo i dati del 428 pagine intere, quindi inseriremo il codice nel ciclo for e richiederemo ripetutamente il sito Web a pagine diverse e ogni volta otterremo 20 righe e sette colonne.
per io nel raggio d'azione(1, 429): risposta = request.get("https://api.themoviedb.org/3/movie/top_rated?api_key=<api_key>&lingua=en-US&pagina={}".formato(io)) temp_df = pd.DataFrame(risposta.json()["risultati"])[['ID','titolo','panoramica','popolarità','data di rilascio','voto_media','vote_count']] data.append(temp_df, ignore_index=Falso)
Perciò, abbiamo ottenuto il frame di dati completo con 8551 righe. abbiamo formattato un numero di pagina per richiedere ogni volta una pagina diversa. E menziona la tua chiave API nel link rimuovendo il tag HTML. Ci vorrà almeno 2 minuti per correre. Il frame di dati che abbiamo è simile a questo.
Salva i dati in un file CSV in modo da poterlo utilizzare per l'analisi, elaborare e creare un progetto su di esso.
Ottieni dati da un database SQL
Lavorare con i database SQL è facile con Python. Python fornisce varie librerie per connettersi al database e leggere le query SQL ed estrarre i dati dalla tabella SQL a Pandas Dataframe.
A scopo dimostrativo, stiamo utilizzando un set di dati sulla popolazione di distretti e città del mondo caricato in Kaggle in formato query SQL. Puoi accedere al set di dati da qui.
Scarica il file e caricalo nel tuo database locale. Puoi usare MySQL, XAMPP, SQLite o qualsiasi database a tua scelta. TUTTI i database offrono l'opzione di importazione, basta fare clic su di esso, seleziona il file scaricato e caricalo.
Ora siamo pronti per connettere Python al database ed estrarre i dati SQL in Pandas Dataframe. Per stabilire una connessione, installa la libreria del connettore MySQL.
!pip install mysql.connector
Dopo l'installazione, importare le librerie richieste e dirigere la connessione al database utilizzando il metodo di connessione.
importa numpy come np importa panda come pd import mysql.connector conn = mysql.connector.connect(ospite="localhost", utente="radice", password="", database="Mondo")
Dopo la connessione con il database con successo, possiamo interrogare un database ed estrarre i dati in un frame di dati.
city_data = pd.read_sql_query("SELEZIONARE * DA città", connessione)
Perciò, abbiamo estratto con successo i dati nel dataframe ed è facile lavorare con i database con l'aiuto di python. Puoi anche estrarre i dati filtrandoli con query SQL.
Nota finale
Spero che sia stato un articolo straordinario che ti aiuti a imparare come estrarre dati da diverse fonti. L'ottenimento di dati con l'aiuto dell'API viene utilizzato principalmente da Data Scientist per raccogliere dati dall'ampio e vasto set di dati per una migliore analisi e migliori prestazioni del modello..
Come principiante, la maggior parte delle volte ottieni il file di dati preciso, ma non è sempre così, è necessario portare i dati da diverse fonti che saranno rumorose e lavorarci sopra per prendere decisioni aziendali migliori.
Il supporto mostrato in questo articolo non è di proprietà di DataPeaker e viene utilizzato a discrezione dell'autore.