Angesichts des zunehmenden Reichtums für Internetinhalte stehen Entwickler der Herausforderung, wertvolle Informationen aus einer großen Anzahl von Webseiten schnell und genau zu extrahieren. Als weit verbreitete Entwicklungssprache kann PHP uns dabei helfen, das Kriechen und die Verarbeitung von Webseitendaten mit dem leistungsstarken PHPSPider -Crawler -Framework effizient zu erkennen.
PHPSPIDER ist ein PHP-basiertes Crawler-Framework, das über den Komponisten installiert werden kann. Öffnen Sie die Befehlszeile und geben Sie den folgenden Befehl ein:
<span class="fun">Der Komponist benötigt PHP-Spider/PhpSpider</span>
Nach Abschluss der Installation erstellen Sie eine Datei namens spider.php , führen Sie zuerst die automatische Ladedatei ein, erstellen Sie dann das Crawler -Objekt und setzen Sie die anfängliche Crawling -URL:
<?php
require 'vendor/autoload.php';
<p>use phpspider\core\phpspider;</p>
<p>// Erstellen Sie ein Crawler -Objekt<br>
$spider = new phpspider();</p>
<p>// StarteinstellungURL<br>
$spider->add_start_url('<a rel="noopener" target="_new" class="" href="http://www.example.com">http://www.example.com</a>');</p>
<p>// Rückruffunktion, die die Extraktionsregel definiert<br>
$spider->on_extract_page = function ($page, $data) {<br>
// Schreiben Sie hier die Logik zur Informationsextraktion<br>
return $data;<br>
};</p>
<p>// Starten Sie Crawler<br>
$spider->start();<br>
In der Rückruffunktion können Seitenelemente mit regulären Ausdrücken, XPath oder CSS -Selektoren positioniert werden. Das folgende Beispiel zeigt, wie Sie den Titel und den Körperinhalt der Webseite erhalten:
$spider->on_extract_page = function ($page, $data) {
$title = $page['raw']['headers']['title'][0];
$content = $page['raw']['content'];
$data['title'] = $title;
$data['content'] = strip_tags($content);
return $data;
};
Die extrahierten Informationen können in Speichermedien wie Dateien und Datenbanken gespeichert werden. Das folgende Codebeispiel speichert Datenanhänge in einer Textdatei:
$spider->on_extract_page = function ($page, $data) {
$title = $page['raw']['headers']['title'][0];
$content = $page['raw']['content'];
$data['content'] = strip_tags($content);
// Speichern Sie die Ergebnisse in Dateien
file_put_contents('extracted_data.txt', var_export($data, true), FILE_APPEND);
return $data;
};
Führen Sie nach Abschluss des Codes -Schreibens den folgenden Befehl aus, um den Crawler zu starten:
<span class="fun">PHP spider.php</span>
Der Crawler kriecht die Seite aus der Start -URL, erhalten Sie die erforderlichen Informationen gemäß den Extraktionsregeln und speichern Sie sie.
Durch PHP in Kombination mit dem PHPSPider -Framework können leistungsstarke Webcrawler schnell erstellt werden, um eine genaue Sammlung großer Mengen an Webseiteninformationen zu erzielen. Die in diesem Artikel eingeführte grundlegende Nutzung eignet sich für Anfänger. PHPSPIDER unterstützt auch komplexere Konfigurationen und Funktionen, um den verschiedenen Datenkriechanforderungen zu erfüllen.