Semalt - Come raschiare le pagine Web?

Beautiful Soup è una libreria Python ampiamente utilizzata per raschiare pagine Web creando un albero di analisi da documenti XML e HTML. Il web scraping, una tecnica per estrarre dati da siti Web e pagine, è ampiamente utilizzato nei campi di analisi e gestione dei dati. Nella maggior parte dei casi, il linguaggio di programmazione Python è un prerequisito per la scienza dei dati.

Python 3 ha strumenti e moduli di scraping che puoi applicare al tuo progetto di gestione dei dati. Attualmente in esecuzione come Beautiful Soup 4, questo modulo è compatibile con Python 3 e Python 2.7. Il bellissimo modulo Soup 4 è anche in grado di creare un albero di analisi per la zuppa di tag non chiusa. In questo tutorial, imparerai come raschiare la pagina e scrivere i dati raschiati in un file CSV.

Iniziare

Per iniziare, imposta un PC o un ambiente di codifica Python basato su locale sul tuo PC. Dovresti anche installare il modulo Beautiful Soup and Requests sul tuo computer. La conoscenza di lavorare con entrambi i moduli è anche un prerequisito necessario. Anche la familiarità con la codifica e la struttura HTML è un ulteriore vantaggio.

Comprensione dei dati

In questo contesto, verranno utilizzati dati reali dalla National Gallery of Art per aiutarti a capire come usare Beautiful Soup 4. National Gallery of Art comprende 120.000 pezzi realizzati da circa 13.000 artisti. The Art ha sede a Washington DC, negli Stati Uniti.

L'estrazione dei dati Web con Beautiful Soup non è poi così complicata. Ad esempio, se ti concentri sulla lettera Z, segna e annota il nome nell'elenco. In questo caso, il nome è Zabaglia, Niccola. Per coerenza, indicare il numero di pagine e il nome dell'ultimo artista su quella pagina.

Come importare la libreria Requests and Beautiful Soup

Per importare librerie, attiva il tuo ambiente di programmazione Python 3. Verificare di essere nella stessa directory con l'ambiente di programmazione. Eseguire il comando seguente per iniziare. my_env / bin / attivazione.

Crea un nuovo file e inizia a importare le librerie Beautiful Soup and Requests. La libreria delle richieste ti consentirà di utilizzare HTTP nei tuoi programmi Python in formati leggibili. Beautiful Soup, d'altra parte, lavora per raschiare rapidamente le pagine. Usa bs4 per importare Beautiful Soup.

Come raccogliere e analizzare una pagina Web

Utilizzando Requests raccogli l'URL della tua prima pagina. L'URL della prima pagina verrà assegnato alla pagina variabile. Crea un oggetto BeautifulSoup da Requests e analizza l'oggetto dal parser di Python.

In questo tutorial, l'obiettivo è quello di raccogliere link e nomi degli artisti. Ad esempio, puoi raccogliere date e nazionalità degli artisti. Per gli utenti di Windows, fare clic con il tasto destro sul nome dell'artista. In questo caso, usa Zabaglia, Niccola. Per gli utenti di Mac OS, tocca "CTRL" e fai clic sul nome. Fai clic sul menu "Ispeziona elemento" che si apre sullo schermo per accedere agli strumenti degli sviluppatori web. Stampa i nomi dell'artista per fare in modo che Beautiful Soup analizzi rapidamente un albero.

Rimozione dei collegamenti inferiori

Per rimuovere i collegamenti inferiori nella pagina Web, ispezionare il DOM facendo clic con il pulsante destro del mouse sull'elemento. Identificherai che i collegamenti si trovano sotto una tabella HTML. Utilizzando Beautiful Soup, utilizzare il "metodo di decomposizione" per rimuovere i tag dall'albero di analisi.

Come estrarre il contenuto da un tag

Non è necessario stampare l'intero tag di collegamento, utilizzare Beautiful Soup per rimuovere materiale da un tag. Puoi anche catturare gli URL associati agli artisti usando Beautiful Soup 4.

Acquisizione di dati acquisiti in un file CSV

Il file CSV ti consentirà di archiviare i dati strutturati in un testo semplice, un formato utilizzato principalmente per i fogli di dati. Si consiglia la conoscenza della gestione dei file di testo semplice in Python.

L'estrazione dei dati Web viene utilizzata per raschiare le pagine e ottenere informazioni. Sii attento ai siti web da cui stai estraendo le informazioni. Alcuni siti Web dinamici limitano l'estrazione dei dati Web sui propri siti. Raschiare la pagina con Beautiful Soup e Python 3 è così semplice.