Heim  >  Artikel  >  Backend-Entwicklung  >  Tutorial zur Verwendung von PHP zum Crawlen von Douban-Filmkritiken

Tutorial zur Verwendung von PHP zum Crawlen von Douban-Filmkritiken

PHPz
PHPzOriginal
2023-06-14 17:06:591422Durchsuche

Mit der kontinuierlichen Expansion und Entwicklung des Filmmarktes wird auch die Nachfrage der Menschen nach Filmen immer größer. Was die Filmbewertung angeht, war Douban Film Critics schon immer eine seriösere und beliebtere Wahl. Manchmal müssen wir auch bestimmte Analysen und Verarbeitungen von Douban-Filmrezensionen durchführen, was den Einsatz von Crawler-Technologie erfordert, um Informationen über Douban-Filmrezensionen zu erhalten. In diesem Artikel wird als Referenz ein Tutorial zum Crawlen von Douban-Filmrezensionen mit PHP vorgestellt.

  1. Ermitteln Sie die Seitenadresse des Douban-Films

Bevor Sie Rezensionen zu Douban-Filmen crawlen, müssen Sie zunächst die Seitenadresse des Douban-Films ermitteln. Die Seitenadresse des Films kann über eine Suchmaschine oder durch direkten Zugriff auf die Filmlistenoberfläche von Douban Movies ermittelt werden. Wenn wir beispielsweise die Seitenadresse des Films „The Shawshank Redemption“ erhalten möchten, können wir auf der Filmlistenoberfläche von Douban Movies suchen oder die Seitenadresse des Films direkt in den Browser eingeben: https:/ /movie.douban.com/subject/ 1292052/.

  1. Verwenden Sie PHP, um auf die Douban-Filmseite zuzugreifen und den Seiteninhalt abzurufen.

PHP stellt die cURL-Bibliothek für den Webseitenzugriff und die Datenerfassung bereit. Das Folgende ist ein PHP-Codebeispiel, um auf die Seite „Douban Movies“ zuzugreifen und den Seiteninhalt abzurufen:

$url = 'https://movie.douban.com/subject/1292052/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$html = curl_exec($ch);
curl_close($ch);
echo $html;

Im Code wird zuerst die Seitenadresse von „Douban Movies“ definiert und dann wird die Funktion „curl_init()“ verwendet, um das cURL-Objekt zu initialisieren . Verwenden Sie dann die Funktion „curl_setopt()“, um die Parameter des Curl-Objekts festzulegen, wobei CURLOPT_URL die aufgerufene URL-Adresse und CURLOPT_RETURNTRANSFER das Rückgabeergebnis als Zeichenfolge festlegt. Verwenden Sie dann die Funktion „curl_exec()“, um den cURL-Crawling-Vorgang auszuführen und das Ergebnis der Variablen $html zuzuweisen. Verwenden Sie abschließend die Funktion „curl_close()“, um die cURL-Sitzung zu schließen und zugehörige Ressourcen freizugeben, und geben Sie dann den Wert der Variablen $html aus.

Führen Sie den obigen Code aus, um den HTML-Inhalt der Douban-Filmseite auszugeben.

  1. Parsen Sie den HTML-Inhalt der Douban-Filmrezensionsseite

Nachdem Sie den HTML-Inhalt der Seite erhalten haben, müssen Sie PHP verwenden, um den HTML-Inhalt zu analysieren und die Informationen zur Douban-Filmrezension zu extrahieren.

In PHP können Sie die SimpleXML-Erweiterung verwenden, um XML- oder HTML-Daten zu analysieren. Das Folgende ist ein PHP-Codebeispiel, das verwendet wird, um den HTML-Inhalt der Douban-Filmrezensionsseite zu analysieren und den Bewertungs- und Rezensionsinhalt der Filmrezension zu extrahieren:

$url = 'https://movie.douban.com/subject/1292052/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$html = curl_exec($ch);
curl_close($ch);

// 使用 SimpleXML 解析 HTML 内容
$xml = simplexml_load_string($html);
$ratings = array();
$comments = array();

// 获取影评评分和评论内容
foreach ($xml->xpath('//div[@class="comment-item"]') as $comment) {
    $rating = $comment->div[2]->span[2]->text();
    $comment_content = $comment->div[2]->p->text();
    $ratings[] = (string)$rating;
    $comments[] = (string)$comment_content;
}

print_r($ratings);
print_r($comments);

Im Code wird zunächst die Seitenadresse des Douban-Films definiert. und dann wird Curl verwendet, um auf die Seite zuzugreifen und HTML-Inhalte abzurufen.

Als nächstes verwenden Sie die Funktion simplexml_load_string(), um den HTML-Inhalt in ein SimpleXML-Objekt zu analysieren. Verwenden Sie dann die Funktion xpath() und die XPath-Abfrageanweisung, um alle Filmrezensionsinformationen auf der Seite abzurufen, verwenden Sie die foreach-Anweisung, um jede Filmrezension zu durchlaufen und die Bewertungen und Kommentarinhalte abzurufen. Speichern Sie abschließend die Bewertungen und Kommentare in den Arrays $ratings bzw. $comments und geben Sie den Inhalt dieser beiden Arrays aus.

Führen Sie den obigen Code aus, um alle Filmrezensionsinformationen auf der Douban-Filmrezensionsseite zu analysieren.

  1. Geben Sie die Filmrezensionsinformationen aus.

Als nächstes geben Sie die erhaltenen Filmrezensionsinformationen aus. Sie können HTML und CSS verwenden, um den Ausgabeinhalt zu verschönern. Das Folgende ist ein PHP-Codebeispiel zum Verschönern und Ausgeben der Filmrezensionsinformationen auf der Douban-Filmrezensionsseite:

$url = 'https://movie.douban.com/subject/1292052/';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$html = curl_exec($ch);
curl_close($ch);

// 使用 SimpleXML 解析 HTML 内容
$xml = simplexml_load_string($html);
$ratings = array();
$comments = array();

// 获取影评评分和评论内容
foreach ($xml->xpath('//div[@class="comment-item"]') as $comment) {
    $rating = $comment->div[2]->span[2]->text();
    $comment_content = $comment->div[2]->p->text();
    $ratings[] = (string)$rating;
    $comments[] = (string)$comment_content;
}

// 输出美化的影评信息
echo '<style>table, th, td {border: 1px solid black; border-collapse: collapse;} th, td {padding: 5px;}</style>';
echo '<table><tr><th>评分</th><th>评论内容</th></tr>';
for ($i = 0; $i < count($ratings); $i++) {
    echo '<tr><td>' . $ratings[$i] . '</td><td>' . $comments[$i] . '</td></tr>';
}
echo '</table>';

Verwenden Sie im Code zuerst Curl, um den HTML-Inhalt der Douban-Filmseite abzurufen, und analysieren Sie ihn dann mit SimpleXML HTML-Inhalte und erhalten Sie die Bewertungen und Bewertungen der Filmkritiken.

Als nächstes verwenden Sie HTML und CSS, um den Ausgabeinhalt zu verschönern, einschließlich des Hinzufügens von Tabellenstilen, des Festlegens von Tabellenüberschriften und Tabelleninhalten sowie der Verwendung einer for-Schleife, um jede Filmrezension zu durchlaufen und die Bewertungen und Kommentare auszugeben.

Führen Sie den obigen Code aus, um die Filmrezensionsinformationen der verschönerten Douban-Filmrezensionsseite auszugeben.

Zusammenfassend stellt dieser Artikel ein Tutorial zur Verwendung von PHP zum Crawlen von Douban-Filmkritiken vor. Durch das Lernen können Leser lernen, wie sie PHP- und cURL-Technologie verwenden, um auf Webseiten zuzugreifen und Daten zu erfassen, sowie wie sie SimpleXML-Erweiterungen verwenden, um HTML-Inhalte zu analysieren und die Ausgabe zu verschönern.

Das obige ist der detaillierte Inhalt vonTutorial zur Verwendung von PHP zum Crawlen von Douban-Filmkritiken. 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