Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliches Tutorial zur Verwendung der Scrapy-Shell zur Überprüfung der Ergebnisse der XPath-Auswahl

Ausführliches Tutorial zur Verwendung der Scrapy-Shell zur Überprüfung der Ergebnisse der XPath-Auswahl

巴扎黑
巴扎黑Original
2017-07-19 14:19:342099Durchsuche

1. Scrapy Shell

ist ein gutes interaktives Tool des Scrapy-Pakets. Derzeit verwende ich es hauptsächlich, um die Ergebnisse der XPath-Auswahl zu überprüfen. Nach der Installation von Scrapy können Sie die Scrapy-Shell direkt über cmd bedienen.

Scrapy Shell

Scrapy-Terminal ist ein interaktives Terminal. Wir können den Code testen, ohne den Spider zu starten. Es kann auch verwendet werden, um XPath- oder CSS-Ausdrücke zu testen und zu sehen, wie sie funktionieren. Möglichkeit, die Extraktion von Daten aus den von uns gecrawlten Webseiten zu erleichtern.

Wenn IPython installiert ist, verwendet das Scrapy-Terminal IPython (anstelle des Standard-Python-Terminals). Das IPython-Terminal ist leistungsfähiger als andere und bietet intelligente automatische Vervollständigung, hervorgehobene Ausgabe und andere Funktionen. (Es wird empfohlen, IPython zu installieren)

Scrapy Shell starten

Geben Sie das Stammverzeichnis des Projekts ein und führen Sie den folgenden Befehl aus, um die Shell zu starten:

scrapy shell "http ://www.itcast.cn/channel/teacher.shtml"

Scrapy Shell erstellt automatisch einige praktische Objekte basierend auf der heruntergeladenen Seite, wie z. B. Antwortobjekt und Selektor Objekt (für HTML- und XML-Inhalte).

Wenn die Shell geladen wird, erhalten Sie eine lokale Antwortvariable mit Antwortdaten. Durch Eingabe von „response.body“ wird der Antworttext ausgegeben und „response.headers“ wird ausgegeben, um den Antwortheader anzuzeigen.

Wenn Sie „response.selector“ eingeben, erhalten Sie ein durch „response“ initialisiertes Objekt der Klasse „Selektor“. Zu diesem Zeitpunkt können Sie die Antwort mit „response.selector.xpath()“ oder „response.selector.css(“ abfragen. ).

Scrapy bietet auch einige Verknüpfungen, wie zum Beispiel „response.xpath()“ oder „response.css()“, die ebenfalls wirksam werden können (wie im vorherigen Fall).

Selectors

Scrapy Selectors integrierter XPath- und CSS-Selector-Ausdrucksmechanismus

Selector verfügt über vier grundlegende Methoden, die am häufigsten verwendete ist xpath:

xpath (): Übergeben Sie den xpath-Ausdruck und geben Sie die Auswahlliste aller Knoten zurück, die dem Ausdruck entsprechen

extract(): Serialisieren Sie den Knoten in einen Unicode-String und geben Sie die Liste zurück

css() : Übergeben Sie einen CSS-Ausdruck und geben Sie die Auswahlliste aller dem Ausdruck entsprechenden Knoten zurück. Die Syntax ist dieselbe wie bei BeautifulSoup4

re(): Extrahieren Sie Daten basierend auf der übergebenen Unicode-String-Liste Liste


2. ipython

auf der offiziellen Website Es wird empfohlen Ich wollte ipython verwenden, um Scrapy Shell auszuführen, also habe ich versucht, es zu installieren. Da meine Python-Umgebung zuvor über Conda konfiguriert wurde (siehe vorherigen Artikel), ist es sehr praktisch, ipython über conda zu installieren.

conda install -c conda-forge ipython

Dann wird das gesamte ipython-Paket heruntergeladen Alles ist kompiliert, es gibt keinen lästigen Kompilierungsfehlerprozess.

3. Führen Sie ipython aus und führen Sie Scrapy Shell auf ipython aus

im aktuellen cmd-Ausführungsfeld, weil Das System Die Umgebung wurde konfiguriert und Sie können das Python-Paket direkt ausführen. Geben Sie also ipython direkt in das cmd-Ausführungsfeld ein und Sie gelangen in das ipython-Ausführungsfeld, das dem Systemstandard-cmd ähnelt, jedoch umfangreichere Funktionen, kräftigere Farben und ein besseres Layout aufweist . Es kann auch gut sein.

Aber wenn ich den Scrapy-Shell-Befehl direkt darauf eingebe, wird immer wieder angezeigt, dass es keinen solchen Befehl gibt, und es schlägt fehl. Ich stecke hier fest.

Später durch sorgfältiges Lesen der Scrapy-Shell-Anweisungen

Wenn Sie IPython installiert haben, wird es von der Scrapy-Shell verwendet (anstelle der Standard-Python-Konsole ).

Das bedeutet, dass die Scrapy-Shell die Ipython-Laufbox selbst findet.

Geben Sie also direkt Scrapy Shell in das Standard-Ausführungsfeld von cmd ein, und das zurückgegebene Ergebnis wird direkt in das Ipython-Ausführungsfeld aufgerufen.

Das obige ist der detaillierte Inhalt vonAusführliches Tutorial zur Verwendung der Scrapy-Shell zur Überprüfung der Ergebnisse der XPath-Auswahl. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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