2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Scrapy ist ein Python-Framework zum Crawlen von Website-Daten und zum Extrahieren strukturierter Informationen
1.Motor
– Die Engine von Scrapy ist der Kern für die Steuerung des Datenflusses und das Auslösen von Ereignissen. Es verwaltet die vom Spider gesendeten Anfragen und die empfangenen Antworten und verarbeitet die vom Spider generierten Elemente. Der Motor ist die treibende Kraft hinter Scrapys Betrieb.
2.Planer
– Der Scheduler ist dafür verantwortlich, von der Engine gesendete Anfragen zu empfangen und sie gemäß bestimmten Richtlinien (z. B. Priorität, Tiefe usw.) in die Warteschlange einzureihen. Wenn die Engine eine neue Anfrage benötigt, nimmt der Scheduler die Anfrage aus der Warteschlange und gibt sie an die Engine zurück. Es gewährleistet eine ordnungsgemäße Bearbeitung der Anfragen.
3. Downloader
– Der Downloader ist für das Herunterladen von Webinhalten basierend auf von der Scrapy-Engine gesendeten Anfragen verantwortlich. Es verwendet das HTTP-Protokoll zur Kommunikation mit dem Website-Server und gibt den heruntergeladenen Webseiteninhalt als Antwort an die Scrapy-Engine zurück. Der Downloader ist die Kernkomponente von Scrapy zum Abrufen von Webseitendaten.
4.Spinnen
– Spiders sind Komponenten in Scrapy, die zum Definieren der Crawling-Logik und zum Parsen von Webseiteninhalten verwendet werden.Sie generieren erste Anfragen auf der Grundlage definierter Regeln und verarbeiten die vom Downloader zurückgegebene Antwort, um die erforderlichen Daten (Item) zu extrahieren oder eine neue Anfrage (Request) für das weitere Crawling zu generieren.
5.Artikel-Pipelines
– Item-Pipelines sind für die Verarbeitung der von Spider extrahierten Items verantwortlich. Sie können verschiedene Aufgaben ausführen, z. B. Daten bereinigen, Datenintegrität überprüfen und Daten in Datenbanken oder Dateien speichern. Durch die Definition mehrerer Pipelines können Daten flexibel verarbeitet werden, um unterschiedlichen Anforderungen gerecht zu werden.
6. Downloader-Middlewares
– Die Downloader-Middleware befindet sich zwischen der Scrapy-Engine und dem Downloader und wird zur Verarbeitung von Anfragen und Antworten verwendet. Sie können die Anfrage (z. B. das Hinzufügen von Anforderungsheadern, das Festlegen von Proxys usw.) oder die Antwort (z. B. Komprimierungsverarbeitung, Umleitungsverarbeitung usw.) ändern und so steuern, wie Scrapy mit der Website interagiert. Middleware ist für Scrapy ein wichtiger Mechanismus zur Erweiterung seiner Funktionalität.
7. Spider-Middlewares
– Spider-Middleware befindet sich zwischen der Scrapy-Engine und Spiders und wird verwendet, um Spiders Eingabe (d. h. Antwort) und Ausgabe (d. h. Artikel und neue Anfragen) zu verarbeiten. Sie können Antworten ändern oder verwerfen, Ausnahmen behandeln und sogar von Spidern generierte Elemente und Anforderungen ändern oder verwerfen. Spider-Middleware bietet die Möglichkeit, während der Spider-Ausführung benutzerdefinierte Funktionen einzufügen.
Der Datenfluss zwischen den einzelnen Komponenten ist in der Abbildung dargestellt:
pip install scrapy