2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Scrapy è un framework Python per la scansione dei dati dei siti Web e l'estrazione di informazioni strutturate
1.Motore
– Il motore di Scrapy è il nucleo del controllo del flusso di dati e dell’attivazione degli eventi. Gestisce le richieste inviate dallo Spider e le risposte ricevute, nonché l'elaborazione degli Item generati dallo Spider. Il motore è la forza trainante del funzionamento di Scrapy.
2.Pianificazione
– Lo scheduler ha il compito di ricevere le richieste inviate dal motore e di accodarle secondo determinate politiche (come priorità, profondità, ecc.). Quando il motore necessita di una nuova richiesta, lo scheduler prende la richiesta dalla coda e la restituisce al motore. Garantisce un trattamento ordinato delle richieste.
3. Scaricatore
– Il downloader è responsabile del download dei contenuti web in base alle richieste inviate dal motore Scrapy. Utilizza il protocollo HTTP per comunicare con il server del sito Web e restituisce il contenuto della pagina Web scaricato al motore Scrapy come risposta. Il downloader è il componente principale di Scrapy per ottenere i dati delle pagine web.
4. Ragni
– Gli spider sono componenti di Scrapy utilizzati per definire la logica di scansione e analizzare il contenuto della pagina web.Generano richieste iniziali in base a regole definite ed elaborano la risposta restituita dal downloader per estrarre i dati richiesti (Item) o generare una nuova richiesta (Request) per un'ulteriore scansione.
5. Pipeline degli articoli
– Le pipeline degli articoli sono responsabili dell'elaborazione degli articoli estratti da Spider. Possono eseguire varie attività come la pulizia dei dati, la verifica dell'integrità dei dati e l'archiviazione dei dati in database o file. Definendo più pipeline, i dati possono essere elaborati in modo flessibile per soddisfare esigenze diverse.
6. Middleware del downloader
– Il middleware del downloader si trova tra il motore Scrapy e il downloader e viene utilizzato per gestire richieste e risposte. Possono modificare la richiesta (come l'aggiunta di intestazioni della richiesta, l'impostazione di proxy, ecc.) o la risposta (come l'elaborazione della compressione, l'elaborazione del reindirizzamento, ecc.), controllando così il modo in cui Scrapy interagisce con il sito web. Il middleware è un meccanismo importante per Scrapy per estendere le sue funzionalità.
7. Middleware Spider
– Il middleware Spider si trova tra il motore Scrapy e Spiders e viene utilizzato per elaborare l'input (ovvero la risposta) e l'output (ovvero l'articolo e le nuove richieste) di Spider. Possono modificare o scartare risposte, gestire eccezioni e persino modificare o scartare elementi e richieste generate dagli spider. Il middleware Spider offre la possibilità di inserire funzioni personalizzate durante l'esecuzione di Spider.
Il flusso di dati tra ciascun componente è mostrato nella figura:
pip install scrapy