キモブロ

Please spy check please, Fucking retard

phpのjQueryっぽいHTML/XML解析機、phpQueryを使ってみる

javascriptでいえばjQueryrubyでいえばnokogiri、pythonでいえばpyQuery的なことが出来るphpQueryというのを使ってみた。

まずさくらVPSにインストールするところから。なおphpはすでに入ってる前提とする

$ sudo yum install -y php-xml # xmlライブラリ
$ sudo pear channel-discover phpquery-pear.appspot.com
$ sudo pear install phpquery/phpQuery


利用例として、ためしに俺のsteamコミュニティページのHTMLからプレイヤー名を取得するコードを書いてみる

<?php
require_once('phpQuery.php');

$data = file_get_contents("http://steamcommunity.com/id/kymt");
$result = phpQuery::newDocument($data)->find('div.name')->text();
print("steam name is $result\n");
?>

phpQuery::newDocument(HTMLデータ) とすることでphpQueryのクラスのインスタンスが生成される。そして、あとはjQueryと同じような使い方ができるためそうしている。

感想

なんかhtml/xmlの解析がちょっと遅いのが気になった。これするだけでも結構待たされる。2コアマシンでこれだからわりとパフォーマンスにおける実装的な問題がありそう。