skillup

技術ブログ

PHP

phpQueryを使ったスクレイピングに関して

投稿日:2016年8月10日 更新日:

以前、スクレイピングに関してはこのエントリーでも紹介したとおり、phpに標準で入っているDOMDocumentを使う方法が一番楽です。

ところがデータによってはXMLで解析するため目的とする要素を取得するのがなかなか大変でした。備考欄のように文字数が多く、htmlも含まれているtext形式のデータが格納されているデータを取得することがうまくできなかったのです。

今回もっと楽に取得できる方法がないかと思い、phpQueryを使ってみました。

このライブラリを使うとjQueryで要素を取得するように目的の要素を取得、抽出できます。

インストール

https://code.google.com/archive/p/phpquery/downloads

↑ここからダウンロードしてきて、require_onceでファイルを読み込めばOKです。(1ファイルしかありません。)

基本的な使用方法

対象となるHTMLを読み込み、下記のようにセレクタでしていてあげればOKです。

さらにいろいろな使用法を知りたい場合は下記リンクを参考にしてみましょう。

参考リンク

phpQueryでWEBスクレイピングしてみた

【phpQuery】で簡単WEBスクレイピング!をしてみた。

今更ながらPHPでスクレイピングをしてみる

スクレイピング応用編-phpQuery-

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

php5.6のインストール+cake3でのbake

cake3を動かしたい場合、PHP5.4以上でないと動きません。 2016年1月現在、CentOS6でyumでPHPをインストールする場合、php5.3ですので、5.4以上を入れる場合、別のリポジトリ …

no image

APIに関して

RESTAPIのルーティングで気をつけることなんぞを。 直近のプロジェクトではRESTAPIを作ることが多かったんですが気をつけることなんぞを。 Contents1 仕様書はソースから2 ツール3 命 …

no image

ロケール情報について

本日、csvファイルを読み込む処理を行っていたんですが、コンソールからコマンドを打つと化けずに、ウェブ上で見ると化けるという現象が発生。 csv,プログラムともに文字コードがutf8で統一していること …

no image

cakePHPのSSL設定+jQueryのError Loading Page

cakeで作ったアプリの認証画面でhttps環境だとError Loading Pageというエラーメッセージがでてしまい、ログインできないという事象が発生。 最初はSSLが原因かとおもっていたんです …

no image

Traitによるコードの再利用

PHPでは多重継承が禁じられて(親は1つしかもてない)いるため、共通性のあるコードを書こうと思った時に親にかいていない場合限界があります。 そんな時に使えるのがTraitという考え方で、これを使います …

アーカイブ