インターネットコンテンツの豊かさが高まっているため、開発者は多数のWebページから貴重な情報を迅速かつ正確に抽出するという課題に直面しています。広く使用されている開発言語として、PHPは、強力なPHPSPider Crawlerフレームワークを使用して、Webページデータのクロールと処理を効率的に実現するのに役立ちます。
PHPSPiderは、Composerを介してインストールできるPHPベースのCrawlerフレームワークです。コマンドラインを開き、次のコマンドを入力します。
<span class="fun">作曲家にはPHP-Spider/Phpspiderが必要です</span>
インストールが完了したら、 spider.phpという名前のファイルを作成し、最初に自動読み込みファイルを導入し、次にクローラーオブジェクトを作成して、最初のクローリングURLを設定します。
<?php
require 'vendor/autoload.php';
<p>use phpspider\core\phpspider;</p>
<p>// クローラーオブジェクトを作成します<br>
$spider = new phpspider();</p>
<p>// 設定開始URL<br>
$spider->add_start_url('<a rel="noopener" target="_new" class="" href="http://www.example.com">http://www.example.com</a>');</p>
<p>// 抽出ルールを定義するコールバック関数<br>
$spider->on_extract_page = function ($page, $data) {<br>
// ここで情報抽出ロジックを記述します<br>
return $data;<br>
};</p>
<p>// クローラーを始めます<br>
$spider->start();<br>
コールバック関数では、ページ要素は、正規表現、XPath、またはCSSセレクターを使用して配置できます。次の例は、Webページのタイトルとボディコンテンツを取得する方法を示しています。
$spider->on_extract_page = function ($page, $data) {
$title = $page['raw']['headers']['title'][0];
$content = $page['raw']['content'];
$data['title'] = $title;
$data['content'] = strip_tags($content);
return $data;
};
抽出された情報は、ファイルやデータベースなどのストレージメディアに保存できます。次のコード例では、データの付属物をテキストファイルに保存します。
$spider->on_extract_page = function ($page, $data) {
$title = $page['raw']['headers']['title'][0];
$content = $page['raw']['content'];
$data['content'] = strip_tags($content);
// 結果をファイルに保存します
file_put_contents('extracted_data.txt', var_export($data, true), FILE_APPEND);
return $data;
};
コードの書き込みを完了した後、次のコマンドを実行してクローラーを開始します。
<span class="fun">php spider.php</span>
クローラーは、開始URLからページをクロールし、抽出ルールに従って必要な情報を取得して保存します。
PHPSPiderフレームワークと組み合わせたPHPを通じて、強力なWebクローラーを迅速に構築して、大量のWebページ情報の正確なコレクションを実現できます。この記事で導入された基本的な使用法は、初心者に適しています。また、PHPSPiderは、多様なデータクロールニーズを満たすために、より複雑な構成と機能をサポートしています。