developer's diary

最近はc#のエントリが多いです

simple_html_domでtitleとdescriptionを取得する。

PHPで簡単にパーサーするなら、simple_html_domが楽ちん。 大量にパーサーすると、遅いです。 過去に楽天の価格情報を取得するプログラムとか作ったことがあるのですが、 nodejsに変更した覚えがあります。

ソース

<?php
require_once 'simple_html_dom.php';
$html = new simple_html_dom();
$data = file_get_contents("http://www.yahoo.co.jp/");
$html->load($data);
$title = array_shift($html->find('title'))->innertext;
$description = array_shift($html->find("meta[name='description']"))->content;

echo $title."\n";
echo $description."\n";

実行結果

Yahoo! JAPAN
日本最大級のポータルサイト。検索、オークション、ニュース、天気、スポーツ、メール、ショッピングなど多数のサービスを展開。あなたの生活をより豊かにする「課題解決エンジン」を目指していきます。

Yahoo! JAPANって「課題解決エンジン」なんですね。