Heim Backend-Entwicklung Python-Tutorial Ein Muss für neue Crawler: Scrapy Getting Started Guide

Ein Muss für neue Crawler: Scrapy Getting Started Guide

Jun 22, 2023 am 09:05 AM
入门 爬虫 scrapy

Im Hinblick auf die Datenerfassung sind Webcrawler zu einem unverzichtbaren Werkzeug geworden. Für diejenigen, die neu im Erlernen und Beherrschen von Web-Scraping-Techniken sind, kann die Auswahl der richtigen Tools und Frameworks jedoch verwirrend sein. Unter den vielen Web-Crawling-Tools ist Scrapy ein sehr beliebtes Tool. Scrapy ist ein Open-Source-Python-Framework, das einen flexiblen Ansatz zum Verarbeiten und Extrahieren von Daten bietet.

In diesem Artikel stelle ich Ihnen die Grundlagen von Scrapy vor und erkläre, wie Sie einen einfachen Webcrawler in Scrapy erstellen.

1. Scrapy-Erste-Schritte-Anleitung

  1. Scrapy installieren

Bevor Sie beginnen, müssen Sie zunächst Scrapy installieren. Die Installation von Scrapy ist sehr einfach. Führen Sie einfach den folgenden Befehl in der Befehlszeile aus:

pip install scrapy
Nach dem Login kopieren
  1. Erstellen Sie ein Scrapy-Projekt.

Beim Erstellen eines Scrapy-Projekts können Sie den folgenden Befehl verwenden:

scrapy startproject <project_name>
Nach dem Login kopieren

Dadurch wird ein Scrapy-Projekt erstellt Legen Sie im aktuellen Verzeichnis einen Ordner mit dem Namen an und erstellen Sie dort die erforderlichen Dateien und Ordner.

  1. Spider erstellen

In Scrapy ist Spider die Hauptkomponente, die wir zum Crawlen von Daten verwenden. Spider definiert, wie man mit der Anforderung von URLs beginnt, wie man Links folgt und wie man Seiten analysiert. In Scrapy können wir den folgenden Befehl verwenden, um einen Spider zu erstellen:

scrapy genspider <spider_name> <domain_name>
Nach dem Login kopieren

Dadurch wird ein neuer Spider im Projekt erstellt und im Spiders-Verzeichnis gespeichert. Sie können die von uns benötigten Anforderungs- und Parsing-Methoden definieren, indem Sie den Spider bearbeiten.

  1. Crawling-Website konfigurieren

Es ist sehr wichtig, die Crawling-Website zu konfigurieren. Wir müssen die Website-URL definieren, die in der Spider-Datei gecrawlt werden soll, und wie die Anfrage konfiguriert wird. In Scrapy kann diese Funktion durch Schreiben der start_requests-Methode erreicht werden. Diese Methode wird aufgerufen, wenn der Spider startet und eine Anfrage von einer bestimmten URL sendet.

  1. Seitenparsing

In Scrapy ist das Parsen von Webseiten der wichtigste Schritt. Wir können XPath- oder CSS-Selektoren verwenden, um die Seite zu analysieren und die erforderlichen Daten zu extrahieren. Im Spider-Code können Sie die Seite analysieren, indem Sie die Parse-Methode schreiben und die oben genannten Tools verwenden.

  1. Daten speichern

Abschließend müssen wir die extrahierten Daten in einer Datenbank oder Datei speichern. In Scrapy können Sie Pipeline verwenden, um diesen Vorgang auszuführen. Pipeline ist ein Mechanismus zur Datenverarbeitung. Sie definiert spezifische Methoden zur Datenbereinigung, Filterung, Transformation, Speicherung, Ausgabe usw.

2. Ein einfaches Beispiel

Jetzt schreiben wir einen einfachen Spider und verwenden Scrapy, um die Daten der Top 250 Douban-Filme abzurufen. Erstellen Sie zunächst ein neues Projekt in der Befehlszeile mit dem folgenden Befehl:

scrapy startproject tutorial
Nach dem Login kopieren

Gehen Sie in den Tutorial-Ordner und erstellen Sie einen Spider mit dem Namen douban_spider:

scrapy genspider douban_spider movie.douban.com
Nach dem Login kopieren

Als nächstes müssen wir diesen Spider konfigurieren, um Seiten anzufordern und Webseiten zu analysieren. Fügen Sie den folgenden Code in die Spider-Datei ein:

import scrapy

class DoubanSpider(scrapy.Spider):
    name = "douban"
    allowed_domains = ["movie.douban.com"]
    start_urls = [
        "https://movie.douban.com/top250"
    ]

    def parse(self, response):
        for sel in response.xpath('//div[@class="info"]'):
            title = sel.xpath('div[@class="hd"]/a/span/text()').extract()
            yield {'title': title}
Nach dem Login kopieren

Im obigen Code definieren wir zunächst den Namen des Spiders und den Domänennamen der gecrawlten Website. Als Nächstes definierten wir die URLs, die wir crawlen wollten, und schrieben die Parse-Methode, um die Seite zu analysieren und die benötigten Daten zu extrahieren.

Für jedes Element mit dem Klassenattribut „info“ verwenden wir XPath, um die Elemente mit dem Filmtitel zu extrahieren und diese Elemente mit dem Schlüsselwort yield zurückzugeben.

Abschließend müssen wir die extrahierten Daten speichern. Zur Verarbeitung und Speicherung der extrahierten Daten kann eine neue Pipeline erstellt werden. Hier ist eine einfache Pipeline, die die extrahierten Daten in einer JSON-Datei speichert:

import json

class TutorialPipeline(object):

    def __init__(self):
        self.file = open('douban_top250.json', 'w')

    def process_item(self, item, spider):
        line = json.dumps(dict(item)) + "
"
        self.file.write(line)
        return item

    def spider_closed(self, spider):
        self.file.close()
Nach dem Login kopieren

Zuletzt müssen wir die Pipeline in Settings.py konfigurieren. Fügen Sie einfach den folgenden Code in ITEM_PIPELINES hinzu:

ITEM_PIPELINES = {
    'tutorial.pipelines.TutorialPipeline': 100,
}
Nach dem Login kopieren

Jetzt haben wir einen einfachen Scrapy Spider geschrieben und können ihn starten, indem Sie den folgenden Befehl ausführen:

scrapy crawl douban
Nach dem Login kopieren

Nach der Ausführung des Befehls beginnt Scrapy, eine Seite anzufordern und die Daten zu analysieren. Die extrahierten Daten werden in einer JSON-Datei gespeichert.

3. Fazit

Scrapy ist ein sehr flexibles und leistungsstarkes Webcrawler-Framework. Mit Scrapy können wir ganz einfach einen effizienten und skalierbaren Webcrawler erstellen und die erforderlichen Daten extrahieren. Dieser Artikel stellt die Grundlagen von Scrapy vor und bietet ein einfaches Beispiel, um Anfängern beim Erlernen von Webcrawlern zu helfen.

Das obige ist der detaillierte Inhalt vonEin Muss für neue Crawler: Scrapy Getting Started Guide. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Ein Diffusionsmodell-Tutorial, das Ihre Zeit wert ist, von der Purdue University Ein Diffusionsmodell-Tutorial, das Ihre Zeit wert ist, von der Purdue University Apr 07, 2024 am 09:01 AM

Diffusion kann nicht nur besser imitieren, sondern auch „erschaffen“. Das Diffusionsmodell (DiffusionModel) ist ein Bilderzeugungsmodell. Im Vergleich zu bekannten Algorithmen wie GAN und VAE im Bereich der KI verfolgt das Diffusionsmodell einen anderen Ansatz. Seine Hauptidee besteht darin, dem Bild zunächst Rauschen hinzuzufügen und es dann schrittweise zu entrauschen. Das Entrauschen und Wiederherstellen des Originalbilds ist der Kernbestandteil des Algorithmus. Der endgültige Algorithmus ist in der Lage, aus einem zufälligen verrauschten Bild ein Bild zu erzeugen. In den letzten Jahren hat das phänomenale Wachstum der generativen KI viele spannende Anwendungen in der Text-zu-Bild-Generierung, Videogenerierung und mehr ermöglicht. Das Grundprinzip dieser generativen Werkzeuge ist das Konzept der Diffusion, ein spezieller Sampling-Mechanismus, der die Einschränkungen bisheriger Methoden überwindet.

Generieren Sie PPT mit einem Klick! Kimi: Lassen Sie zuerst die „PPT-Wanderarbeiter' populär werden Generieren Sie PPT mit einem Klick! Kimi: Lassen Sie zuerst die „PPT-Wanderarbeiter' populär werden Aug 01, 2024 pm 03:28 PM

Kimi: In nur einem Satz, in nur zehn Sekunden ist ein PPT fertig. PPT ist so nervig! Um ein Meeting abzuhalten, benötigen Sie einen PPT; um einen wöchentlichen Bericht zu schreiben, müssen Sie einen PPT vorlegen, auch wenn Sie jemanden des Betrugs beschuldigen PPT. Das College ähnelt eher dem Studium eines PPT-Hauptfachs. Man schaut sich PPT im Unterricht an und macht PPT nach dem Unterricht. Als Dennis Austin vor 37 Jahren PPT erfand, hatte er vielleicht nicht damit gerechnet, dass PPT eines Tages so weit verbreitet sein würde. Wenn wir über unsere harte Erfahrung bei der Erstellung von PPT sprechen, treiben uns Tränen in die Augen. „Es dauerte drei Monate, ein PPT mit mehr als 20 Seiten zu erstellen, und ich habe es Dutzende Male überarbeitet. Als ich das PPT sah, musste ich mich übergeben.“ war PPT.“ Wenn Sie ein spontanes Meeting haben, sollten Sie es tun

Alle CVPR 2024-Auszeichnungen bekannt gegeben! Fast 10.000 Menschen nahmen offline an der Konferenz teil und ein chinesischer Forscher von Google gewann den Preis für den besten Beitrag Alle CVPR 2024-Auszeichnungen bekannt gegeben! Fast 10.000 Menschen nahmen offline an der Konferenz teil und ein chinesischer Forscher von Google gewann den Preis für den besten Beitrag Jun 20, 2024 pm 05:43 PM

Am frühen Morgen des 20. Juni (Pekinger Zeit) gab CVPR2024, die wichtigste internationale Computer-Vision-Konferenz in Seattle, offiziell die besten Beiträge und andere Auszeichnungen bekannt. In diesem Jahr wurden insgesamt 10 Arbeiten ausgezeichnet, darunter zwei beste Arbeiten und zwei beste studentische Arbeiten. Darüber hinaus gab es zwei Nominierungen für die beste Arbeit und vier Nominierungen für die beste studentische Arbeit. Die Top-Konferenz im Bereich Computer Vision (CV) ist die CVPR, die jedes Jahr zahlreiche Forschungseinrichtungen und Universitäten anzieht. Laut Statistik wurden in diesem Jahr insgesamt 11.532 Arbeiten eingereicht, von denen 2.719 angenommen wurden, was einer Annahmequote von 23,6 % entspricht. Laut der statistischen Analyse der CVPR2024-Daten des Georgia Institute of Technology befassen sich die meisten Arbeiten aus Sicht der Forschungsthemen mit der Bild- und Videosynthese und -generierung (Imageandvideosyn

Von Bare-Metal bis hin zu einem großen Modell mit 70 Milliarden Parametern finden Sie hier ein Tutorial und gebrauchsfertige Skripte Von Bare-Metal bis hin zu einem großen Modell mit 70 Milliarden Parametern finden Sie hier ein Tutorial und gebrauchsfertige Skripte Jul 24, 2024 pm 08:13 PM

Wir wissen, dass LLM auf großen Computerclustern unter Verwendung umfangreicher Daten trainiert wird. Auf dieser Website wurden viele Methoden und Technologien vorgestellt, die den LLM-Trainingsprozess unterstützen und verbessern. Was wir heute teilen möchten, ist ein Artikel, der tief in die zugrunde liegende Technologie eintaucht und vorstellt, wie man einen Haufen „Bare-Metals“ ohne Betriebssystem in einen Computercluster für das LLM-Training verwandelt. Dieser Artikel stammt von Imbue, einem KI-Startup, das allgemeine Intelligenz durch das Verständnis der Denkweise von Maschinen erreichen möchte. Natürlich ist es kein einfacher Prozess, einen Haufen „Bare Metal“ ohne Betriebssystem in einen Computercluster für das Training von LLM zu verwandeln, aber Imbue hat schließlich erfolgreich ein LLM mit 70 Milliarden Parametern trainiert der Prozess akkumuliert

KI im Einsatz |. AI hat einen Lebens-Vlog eines allein lebenden Mädchens erstellt, der innerhalb von drei Tagen Zehntausende Likes erhielt KI im Einsatz |. AI hat einen Lebens-Vlog eines allein lebenden Mädchens erstellt, der innerhalb von drei Tagen Zehntausende Likes erhielt Aug 07, 2024 pm 10:53 PM

Herausgeber des Machine Power Report: Yang Wen Die Welle der künstlichen Intelligenz, repräsentiert durch große Modelle und AIGC, hat unsere Lebens- und Arbeitsweise still und leise verändert, aber die meisten Menschen wissen immer noch nicht, wie sie sie nutzen sollen. Aus diesem Grund haben wir die Kolumne „KI im Einsatz“ ins Leben gerufen, um detailliert vorzustellen, wie KI durch intuitive, interessante und prägnante Anwendungsfälle für künstliche Intelligenz genutzt werden kann, und um das Denken aller anzuregen. Wir heißen Leser auch willkommen, innovative, praktische Anwendungsfälle einzureichen. Videolink: https://mp.weixin.qq.com/s/2hX_i7li3RqdE4u016yGhQ Vor kurzem wurde der Lebens-Vlog eines allein lebenden Mädchens auf Xiaohongshu populär. Eine Animation im Illustrationsstil, gepaart mit ein paar heilenden Worten, kann in nur wenigen Tagen leicht erlernt werden.

Fünf Programmiersoftware für den Einstieg in das Erlernen der C-Sprache Fünf Programmiersoftware für den Einstieg in das Erlernen der C-Sprache Feb 19, 2024 pm 04:51 PM

Als weit verbreitete Programmiersprache ist die C-Sprache eine der grundlegenden Sprachen, die für diejenigen erlernt werden müssen, die sich mit Computerprogrammierung befassen möchten. Für Anfänger kann das Erlernen einer neuen Programmiersprache jedoch etwas schwierig sein, insbesondere aufgrund des Mangels an entsprechenden Lernwerkzeugen und Lehrmaterialien. In diesem Artikel werde ich fünf Programmiersoftware vorstellen, die Anfängern den Einstieg in die C-Sprache erleichtert und Ihnen einen schnellen Einstieg ermöglicht. Die erste Programmiersoftware war Code::Blocks. Code::Blocks ist eine kostenlose integrierte Open-Source-Entwicklungsumgebung (IDE) für

Eine Pflichtlektüre für technische Anfänger: Analyse der Schwierigkeitsgrade von C-Sprache und Python Eine Pflichtlektüre für technische Anfänger: Analyse der Schwierigkeitsgrade von C-Sprache und Python Mar 22, 2024 am 10:21 AM

Titel: Ein Muss für technische Anfänger: Schwierigkeitsanalyse der C-Sprache und Python, die spezifische Codebeispiele erfordert. Im heutigen digitalen Zeitalter ist Programmiertechnologie zu einer immer wichtigeren Fähigkeit geworden. Ob Sie in Bereichen wie Softwareentwicklung, Datenanalyse, künstliche Intelligenz arbeiten oder einfach nur aus Interesse Programmieren lernen möchten, die Wahl einer geeigneten Programmiersprache ist der erste Schritt. Unter vielen Programmiersprachen sind C-Sprache und Python zwei weit verbreitete Programmiersprachen, jede mit ihren eigenen Merkmalen. In diesem Artikel werden die Schwierigkeitsgrade der C-Sprache und von Python analysiert

Der leitende NVIDIA-Architekt zählt die 12 Schwachstellen von RAG auf und vermittelt Lösungen Der leitende NVIDIA-Architekt zählt die 12 Schwachstellen von RAG auf und vermittelt Lösungen Jul 11, 2024 pm 01:53 PM

Retrieval-Augmented Generation (RAG) ist eine Technik, die Retrieval nutzt, um Sprachmodelle zu verbessern. Bevor ein Sprachmodell eine Antwort generiert, ruft es insbesondere relevante Informationen aus einer umfangreichen Dokumentendatenbank ab und verwendet diese Informationen dann zur Steuerung des Generierungsprozesses. Diese Technologie kann die Genauigkeit und Relevanz von Inhalten erheblich verbessern, das Problem der Halluzinationen wirksam lindern, die Geschwindigkeit der Wissensaktualisierung erhöhen und die Nachverfolgbarkeit der Inhaltsgenerierung verbessern. RAG ist zweifellos einer der spannendsten Bereiche der Forschung im Bereich der künstlichen Intelligenz. Weitere Informationen zu RAG finden Sie im Kolumnenartikel auf dieser Website „Was sind die neuen Entwicklungen bei RAG, das sich darauf spezialisiert hat, die Mängel großer Modelle auszugleichen?“ Diese Rezension erklärt es deutlich. Aber RAG ist nicht perfekt und Benutzer stoßen bei der Verwendung oft auf einige „Problempunkte“. Kürzlich die fortschrittliche generative KI-Lösung von NVIDIA

See all articles