首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

使用 simple_html_dom 快速構建 PHP 電影爬蟲實戰指南

     編輯:PHP 綜合知識

前言

想快速抓取網頁數據?PHP 配合 simple_html_dom 庫是絕佳組合。這個輕量級解析器支援 PHP 5+,操作直觀,幾行代碼即可完成 HTML 文檔解析與元素提取。

環境準備

首先從 GitHub 下載庫文件:

https://github.com/samacs/simple_html_dom

將 simple_html_dom.php 放入項目目錄,即可開始開發。

實戰:抓取泡泡影視列表頁

以 https://paopaotv.com/tv-type-id-5-pg-1.html 為例,該頁面採用字母分類模式,電影數據位於 id="letter-focus" 容器內的 class="letter-focus-item" 列表項中。

核心代碼實現

<?php
include_once 'simple_html_dom.php';

// 獲取 HTML 並轉為對象
$html = file_get_html('https://paopaotv.com/tv-type-id-5-pg-1.html');

// 定位列表容器
$listData = $html->find("#letter-focus .letter-focus-item");

foreach ($listData as $key => $eachRowData) {
    // 提取影片名稱
    $filmName = $eachRowData->find("dd span", 0)->plaintext;
    
    // 提取詳情頁鏈接
    $filmUrl = $eachRowData->find("dd a", 0)->href;
    
    // 此處可進一步請求 $filmUrl 獲取詳細信息
    // ...
}
?>

關鍵方法解析

  • file_get_html():直接獲取遠程頁面並生成 DOM 對象
  • find():支援 CSS 選擇器語法,返回元素數組或單一元素
  • plaintext:獲取元素純文本內容
  • href:直接讀取鏈接屬性

進階建議

實際項目中建議加入:

  1. 錯誤處理與重試機制
  2. 請求間隔控制,避免被封 IP
  3. User-Agent 偽裝
  4. 數據入庫前的清洗驗證

掌握這套流程,輕鬆應對各類列表頁、詳情頁數據採集需求。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved