Heim > Artikel > Backend-Entwicklung > Python-Crawler zum Erstellen eines Scrapy-Crawler-Frameworks in der Anaconda-Umgebung
Wie erstelle ich ein Scrapy-Crawler-Framework in einer Anaconda-Umgebung? Dieser Artikel führt Sie in die Schritte zum Erstellen eines Scrapy-Crawler-Framework-Projekts in der Anaconda-Umgebung ein. Es lohnt sich, ihn zu lesen.
Python-Crawler-Tutorial-31 – Scrapy-Crawler-Framework-Projekt erstellen
Zuallererst befindet sich dieser Artikel in der Anaconda-Umgebung. Wenn Anaconda also nicht installiert ist, gehen Sie bitte zum Herunterladen auf die offizielle Website und installieren Sie es zuerst
Anaconda-Download-Adresse: https://www.anaconda.com/download/
Erstellung des Scrapy-Crawler-Framework-Projekts
0.
1. Geben Sie die Anaconda-Umgebung ein, die Sie verwenden möchten
Hier haben wir das Projekt erstellt und analysieren die Rolle der automatisch generierten Dateien
1. Der Umgebungsname kann sein gefunden unter [Einstellungen] in [Pycharm] Suchen Sie
unter [Projekt:] 2. Verwenden Sie den Befehl: Umgebungsnamen aktivieren, zum Beispiel:
aktivieren learn
3. Geben Sie das gewünschte Verzeichnis ein, in dem das Scrapy-Projekt gespeichert werden soll [Hinweis]
4. Neues Projekt: scrapy startproject xxx Projektname, zum Beispiel:
scrapy startproject new_project
5. Vorgangs-Screenshot:
6. Öffnen Sie das Verzeichnis im Datei-Explorer und Sie werden feststellen, dass mehrere Dateien generiert wurden
7. Öffnen Sie einfach das Verzeichnis, in dem sich das Projekt befindet
Entwicklung des Scrapy-Crawler-Framework-Projekts
0 um das Projekt zu öffnen, Screenshot:
Der allgemeine Prozess der Projektentwicklung:
Die Adresse Spider/xxspider.py ist für die Zerlegung und verantwortlich Extrahieren der heruntergeladenen Daten
1. Klären Sie das Ziel/Produkt, das gecrawlt werden muss: Schreiben Sie item py
2. Laden Sie eine Python-Datei herunter und erstellen Sie sie im Spider-Verzeichnis:
3. Inhalt speichern: Pipelines.py
Pipeline.py-Datei
Wenn das Spider-Objekt geschlossen ist, wird das
Wenn das Spider-Objekt geöffnet wird, wird
aufgerufen, um einige notwendige Parameter zu initialisieren.
Die von der Spider extrahierten Elemente werden als Parameter übergeben
wird ebenfalls übergeben. Diese Methode muss
implementieren und ein Item-Objekt zurückgeben. Das verworfene Element entspricht nicht der nachfolgenden Pipeline
Pipeline-Datei
Nachdem der Crawler die Daten extrahiert und im Element gespeichert hat, müssen die im Element gespeicherten Daten weiter verarbeitet werden, z. B. Reinigung, Entwurmung, Speicherung usw.
Pipeline muss die Funktion „process_item“ verarbeiten
process_item
_ init _: Konstruktor
open_spider(spider):
close_spider(spider):
Spider-Verzeichnis
entspricht der Datei unter dem Ordner Spider
_ init _: Initialisieren Sie den Crawler-Namen, starten Sie die _urls-Liste
start_requests: generieren Anforderungen Objektschnittpunkt Laden Sie die Antwort herunter und geben Sie sie an Scrapy zurück
Analyse: Analysieren Sie das entsprechende Element gemäß der zurückgegebenen Antwort, und das Element gelangt automatisch in die Pipeline: Analysieren Sie bei Bedarf die URL, und die URL wird automatisch übergeben zum Anforderungsmodul, und der Zyklus geht weiter
start_requests: Diese Methode kann einmal aufgerufen werden, den Inhalt von start_urls lesen und den Schleifenprozess starten
Name: Legen Sie den Crawler-Namen fest
start_urls: Legen Sie die URL fest, um den ersten Crawling-Batch zu starten
allow_domains: Liste der Domänennamen, die Spider crawlen darf
start_request(self): wird nur einmal aufgerufen
Parse: Erkennungskodierung
Protokoll: Protokolldatensatz
Verwandte Empfehlungen:
Detaillierte Erläuterung von Scrapy-Beispielen des Python-Crawler-Frameworks
Einführungs-Tutorial zum Scrapy-Crawler 4 Spider (Crawler)
Ein einfaches Beispiel für das Schreiben eines Webcrawlers mit Pythons Scrapy-Framework
Das obige ist der detaillierte Inhalt vonPython-Crawler zum Erstellen eines Scrapy-Crawler-Frameworks in der Anaconda-Umgebung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!