Heim >Backend-Entwicklung >Python-Tutorial >Analyse des Funktionsprinzips des Python-Crawlers
1. Wie der Crawler funktioniert
Webcrawler oder Web Spider ist ein sehr anschaulicher Name. Wenn man das Internet mit einem Spinnennetz vergleicht, dann ist eine Spinne eine Spinne, die im Netz herumkriecht. Webspider suchen über ihre Linkadressen nach Webseiten. Lesen Sie ausgehend von einer bestimmten Seite der Website (normalerweise der Homepage) den Inhalt der Webseite, suchen Sie nach anderen Linkadressen auf der Webseite und finden Sie dann über diese Linkadressen die nächste Webseite. Dieser Zyklus wird bis zu allen Webseiten dieser Website fortgesetzt sind enthalten, bis der Abruf abgeschlossen ist. Betrachtet man das gesamte Internet als Website, dann können Webspider dieses Prinzip nutzen, um alle Webseiten im Internet zu crawlen. Auf diese Weise ist ein Webcrawler ein Crawler, ein Programm, das Webseiten crawlt. Die grundlegende Funktion eines Webcrawlers besteht darin, Webseiten zu crawlen. Wie können Sie also die gewünschte Seite genau so erhalten, wie Sie es möchten? Beginnen wir mit der URL.
Der Prozess des Crawlens von Webseiten ist eigentlich derselbe, wie Leser normalerweise den IE-Browser zum Durchsuchen von Webseiten verwenden. Sie geben beispielsweise die Adresse www.baidu.com in die Adresszeile des Browsers ein. Der Vorgang des Öffnens einer Webseite besteht eigentlich darin, dass der Browser als browsender „Client“ eine Anfrage an den Server sendet, die serverseitigen Dateien lokal „abruft“ und sie dann interpretiert und anzeigt. HTML ist eine Auszeichnungssprache, die Tags verwendet, um Inhalte zu markieren und sie zu analysieren und zu unterscheiden. Die Funktion des Browsers besteht darin, den erhaltenen HTML-Code zu analysieren und dann den Originalcode in die Website-Seite umzuwandeln, die wir direkt sehen.
Vereinfacht ausgedrückt ist die URL die im Browser eingegebene Zeichenfolge http://www.baidu.com. Bevor Sie URLs verstehen, müssen Sie zunächst das Konzept von URIs verstehen.
Was ist ein URI?
Jede im Web verfügbare Ressource, wie HTML-Dokumente, Bilder, Videoclips, Programme usw., wird durch einen Universal Resource Identifier (URI) lokalisiert.
URI besteht normalerweise aus drei Teilen:
Der Benennungsmechanismus für den Zugriff auf Ressourcen;
Der Name von die Ressource selbst, bestehend aus dem Pfad express.
Zum Beispiel der folgende URI: http://www.why.com.cn/myhtml/html1223/
Dies ist eine Ressource, auf die über das HTTP-Protokoll zugegriffen werden kann,
Befindet sich auf dem Host www.webmonkey.com.cn und der Zugriff auf
erfolgt über den Pfad „/html/html40“.
2. Verständnis und Beispiele von URLs
URL ist eine Teilmenge von URI. Es ist die Abkürzung für Uniform Resource Locator, übersetzt als „Uniform Resource Locator“. Laienhaft ausgedrückt ist URL eine Zeichenfolge, die Informationsressourcen im Internet beschreibt und hauptsächlich in verschiedenen WWW-Clientprogrammen und Serverprogrammen verwendet wird. URLs können verwendet werden, um verschiedene Informationsressourcen in einem einheitlichen Format zu beschreiben, einschließlich Dateien, Serveradressen und Verzeichnisse usw. Das allgemeine Format der URL ist (eckige Klammern [] sind optional):
Protokoll :// Hostname[:Port] / Pfad / [;Parameter][?Abfrage]#Fragment
Das URL-Format besteht aus drei Teilen:
Der erste Teil ist das Protokoll (oder die Dienstmethode).
Der zweite Teil ist die IP-Adresse des Hosts, auf dem die Ressource gespeichert ist (manchmal einschließlich der Portnummer).
Der dritte Teil ist die spezifische Adresse der Host-Ressourcen, wie z. B. Verzeichnisse und Dateinamen.
Der erste Teil und der zweite Teil werden durch das Symbol „://“ getrennt, und der zweite Teil und der dritte Teil werden durch das Symbol „/“ getrennt. Der erste und zweite Teil sind unverzichtbar, der dritte Teil kann manchmal weggelassen werden.
3. Einfacher Vergleich von URL und URI
URI ist eine Abstraktion einer URL auf niedrigerer Ebene, ein String-Text-Standard. Mit anderen Worten: URIs gehören zur übergeordneten Klasse und URLs gehören zu den Unterklassen von URI. URL ist eine Teilmenge von URI. Die Definition von URI lautet: Uniform Resource Identifier; die Definition von URL lautet: Uniform Resource Locator. Der Unterschied zwischen den beiden besteht darin, dass der URI den Pfad zum Anforderungsserver darstellt und eine solche Ressource definiert. Die URL beschreibt auch, wie auf die Ressource zugegriffen wird (http://).
Sehen wir uns zwei kleine Beispiele für URLs an.
1. URL-Beispiel des HTTP-Protokolls:
Verwenden Sie das Hypertext Transfer Protocol HTTP, um Ressourcen für Hypertext-Informationsdienste bereitzustellen.
Beispiel: http://www.peopledaily.com.cn/channel/welcome.htm
Der Computerdomänenname ist www.peopledaily.com.cn.
Die Hypertextdatei (Dateityp ist .html) ist willkommen.htm im Verzeichnis /channel.
Dies ist ein Computer von People’s Daily of China.
Beispiel: http://www.rol.cn.NET/talk/talk1.htm
Der Computerdomänenname ist www.rol.cn.Net.
Die Hypertextdatei (Dateityp ist .html) ist talk1.htm im Verzeichnis/talk.
Dies ist die Adresse des Red Chat Room. Von hier aus können Sie den ersten Raum des Red Chat Room betreten.
2. Datei-URL
Wenn Sie eine URL zur Darstellung einer Datei verwenden, wird der Servermodus durch die Datei dargestellt, gefolgt von der Host-IP-Adresse, dem Dateizugriffspfad (d. h. dem Verzeichnis), dem Dateinamen und anderen Informationen.
Manchmal können Verzeichnis- und Dateinamen weggelassen werden, aber das Symbol „/“ kann nicht weggelassen werden.
Beispiel: file://ftp.yoyodyne.com/pub/files/foobar.txt
Die obige URL stellt das pub/files/-Verzeichnis dar, das auf dem Host ftp.yoyodyne.com gespeichert ist Eine Datei unter, der Dateiname ist foobar.txt.
Beispiel: file://ftp.yoyodyne.com/pub
stellt das Verzeichnis/pub auf dem Host ftp.yoyodyne.com dar.
Beispiel: file://ftp.yoyodyne.com/
stellt das Stammverzeichnis des Hosts ftp.yoyodyne.com dar.
Das Hauptverarbeitungsobjekt des Crawlers ist die URL. Er ruft den erforderlichen Dateiinhalt anhand der URL-Adresse ab und verarbeitet ihn dann weiter.
Daher ist das genaue Verständnis von URLs für das Verständnis von Webcrawlern von entscheidender Bedeutung.
Das Obige ist der gesamte Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels jedem beim Lernen oder Arbeiten helfen kann. Ich hoffe auch, die PHP-Chinese-Website zu unterstützen.
Weitere Artikel zur Analyse des Funktionsprinzips des Python-Crawlers finden Sie auf der chinesischen PHP-Website!