phpQuery PHP採集及html處理類

來源:互聯網
上載者:User

一、phpQuery簡介

在PHP服務端處理採集來的資料或者處理html文檔的時候我們一般都是使用Regex來擷取我們想要的部分。

對於html頁面,不應該使用正則的原因主要有3個

1、編寫條件運算式比較麻煩

尤其對於新手,看到一堆”不知所云”的字元評湊在一起,有種腦袋都要炸了的感覺。如果要分離的對象沒有太明顯的特徵,正則寫起來更是麻煩。

2、效率不高

對於php來說,正則應該是沒有辦法的辦法,能通過字串函數解決的,就不要勞煩正則了。用正則去處理一個30多k的檔案,效率不敢保證。

3、有phpQuery

如果你使用過jQuery,想擷取某個特定元素應該是輕而易舉事情,phpQuery讓這成為了可能。你可以按jQuery的文法選取器來篩選你所要的資料。

phpQuery是基於php5新添加的DOMDocument。而DOMDocument則是專門用來處理html/xml。它提供了強大xpath選 擇器及其他很多html/xml操作函數,使得處理html/xml起來非常方便。

二、phpQuery簡單實用

include 'phpQuery.php';
phpQuery::newDocumentFile('http://www.scutephp.com');
$companies = pq('#hotcoms .coms')->find('div');
foreach($companies as $company)
{
echo pq($company)->find('h3 a')->text()."
";
}
?>

小結
pq()就像jQuery裡的$()
基本上jQuery的選取器都可以用在phpQuery上,只要把’.'變成’->’
phpQuery提供了好幾種載入檔案的方法,有的使用字串,有的使用檔案(包括url),選擇的時候要注意

項目地址:http://code.google.com/p/phpquery/

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.