當前位置: 首頁> 最新文章列表> 使用PHP高效爬取天貓與淘寶商品數據的實戰教程

使用PHP高效爬取天貓與淘寶商品數據的實戰教程

gitbox 2025-07-31

簡介

隨著電子商務的快速發展,網購已成為人們生活中不可或缺的一部分。天貓和淘寶作為中國最大的電商平台,擁有豐富的商品信息資源。本文將分享如何通過PHP實現對天貓和淘寶商品數據的爬取,幫助你輕鬆獲取商品詳情。

準備工作

安裝依賴庫

開始之前,需要安裝兩個關鍵的PHP庫來輔助爬蟲開發。首先是Guzzle,它是一個強大的HTTP客戶端,用於發送網絡請求。通過Composer安裝:

 composer require guzzlehttp/guzzle

其次,安裝DiDom庫,用於解析HTML文檔,方便提取頁面中所需的信息:

 composer require imangazaliev/didom

獲取Cookie

由於天貓和淘寶部分商品數據需要登錄後才能訪問,因此必須先獲取有效的登錄Cookie。登錄賬戶後,可以通過瀏覽器開發者工具複製Cookie信息,以模擬登錄狀態進行請求。

爬取商品數據

發送HTTP請求

使用Guzzle向商品詳情頁發送請求,獲取頁面HTML源代碼。請求時設置User-Agent和Cookie頭,以模擬瀏覽器環境並保持登錄狀態:

 use GuzzleHttp\Client;
$client = new Client();
$response = $client->get('https://detail.tmall.com/item.htm?id=123456789', [
    'headers' => [
        'User-Agent' => 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.82 Safari/537.36',
        'Cookie' => 'your_cookie_value_here',
    ],
]);
$html = $response->getBody()->getContents();

將URL替換為目標商品的詳情頁鏈接,確保請求正常返回頁面內容。

解析HTML源代碼

獲取HTML後,利用DiDom解析文檔,提取商品的關鍵數據,如標題、價格、圖片鏈接和商品描述:

 use DiDom\Document;
$document = new Document($html);
// 獲取商品標題
$title = $document->find('.tb-detail-hd h1')[0]->text();
// 獲取商品價格
$price = $document->find('.tm-price')[0]->text();
// 獲取商品圖片鏈接
$imageUrl = $document->find('.tm-goldbox img')[0]->attr('src');
// 獲取商品描述
$description = $document->find('.tb-detail-content')[0]->text();

以上CSS選擇器可根據實際頁面結構調整,以準確定位所需元素。

總結

結合PHP、Guzzle和DiDom,可以實現對天貓和淘寶商品數據的高效爬取。通過模擬請求和解析頁面內容,輕鬆獲取商品的標題、價格、圖片和描述信息。這種方法適用於市場分析和競爭情報收集,具備很高的實用價值。

希望本文內容能幫助你快速上手電商數據抓取,提升數據處理效率。