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

cakeでの多対多を含んだ検索に関して

cakeを使って多対多を実現する方法はこのエントリーで紹介しました。 が、多対多を含む検索をする場合は一筋縄ではいかず結構面倒くさいです。 通常cakeで検索を行う場合、 ‘conditi …

no image

CakePHP3 Csvプラグイン

cakePHPでのCSVダウンロードプラグインを実装 Contents1 インストール2 プログラム3 注意点4 参考 インストール composer.jsonに下記のように書いてcomposer u …

no image

cakePHPでのCSVダウンロード

cakePHPにてCSVのダウンロードなんぞを。 以前このエントリーでCSVダウンロードに関しては取り扱ったのですが、 ボタンを押す ファイルダイアログが開く パスを選ぶ 意図したデータを正常にダウン …

no image

メモリー不足でのスワップ割り当て

先日、あるサーバーでcomposerをinstallしようとしたところ、 The following exception is caused by a lack of memory or swap, …

no image

cakePHPでのマイグレーション

開発を続けているとデータベースのカラムの構造が変更するってことはしょっちゅうですが、管理がいい加減だとメンバー間でテーブルの構造が変わっていたり、本番と開発で違ってくるなどのトラブルが続出します。 そ …

アーカイブ