ホームページ >バックエンド開発 >PHPチュートリアル >Web ページ要素をキャプチャするための PHP テクノロジーについて簡単に説明します

Web ページ要素をキャプチャするための PHP テクノロジーについて簡単に説明します

WBOY
WBOYオリジナル
2016-06-23 13:56:33938ブラウズ

php が Web ページのコンテンツをキャプチャする場合、より難しい可能性がある部分は DOM 解析です。どれを使用するかは好みに応じて異なります。


1.php には xpath 解析が付属しています。テクノロジー

xpath については、Baidu でその使用法を確認できます。簡単な例をいくつか紹介します。コードは次のとおりです。

error_reporting(0);
$url=' http://www.baidu.com';//クロールした Web ページの URL をここに書きます。何気なく書きました
$html=file_get_contents($url);
$dom=new DOMDocument;
$dom-> loadHTML($html);
$xml=simplexml_import_dom($dom);
$nav=$xml->xpath('//p[@id="nv"]');//簡単な説明は次のとおりです。つまり、simplexml の xpath メソッドを呼び出して、xpath 構文に準拠した文字列を渡すだけです。ここで私が言いたいのは、id 属性値 nv
print_r($nav);


を持つすべての p タグ要素を取得することです。

2.phpquery 、

phpquery は、jQuery セレクターに基づいた dom パーサーです。jQuery をよく使用する場合は、このツールがとても気に入っていただけるでしょう。

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


簡単な説明:

  • pq () は jQuery の $() に似ています
  • 基本的にすべての jQuery セレクターは phpQuery で使用できます。'.' を '->' に変更するだけです

  • phpQuery にはファイルをロードするためのいくつかの方法があり、その中には文字列を使用するものと、文字列を使用するものがあります。ファイル (URL を含む) を選択するときは注意してください。
  • 3.simplehtmldom

    公式マニュアル: http://www.ecartina.com/php-simple-html-dom/manual.htm

    自分の目で見てください。しばらくすれば理解できると思いますが、上手に使うのに30分もかかりませんでした


    ちなみに、php を理解したい場合は、php クローリング システム phpcrawl もあります。検索エンジンに関する知識として彼のソース コードを見ることができます:

    ソース コードのダウンロード アドレス

    http://sourceforge.net/projects/phpcrawl/files/PHPCrawl/


    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。