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

cakePHP3での複数データベース接続

cakePHP3で複数のデータベースに接続することができます。 まず設定ファイルで複数のデータベースを定義します。(defaultはそのままにしておきます。) [crayon-66250911e083 …

no image

phpの時分秒+cakePHPのupdate

ちょっと小ネタ集になります。 Contents1 PHPで秒→時分秒変換2 cakePHPでのupdate PHPで秒→時分秒変換 PHPで秒数から時分秒に変換するプログラムです。 汎用的かなと思った …

no image

コード静的解析ツールを使った際の気づきなど

最近のプロジェクトでコード静的解析ツール(phpcs,phpmd)を使った際の気づきなど コードを書きながら常時エディタがチェックするタイプのものでないとまず無理(保存するたびでも無理だし、コミット時 …

no image

php-fpmに関して

今回はphp-fpmに関して。会社のサーバー(このブログが載っているサーバー)がこれ使ってて、メモリをやたら消費しており、設定を見直す必要があったので、リサーチ。 Contents1 php-fpmと …

no image

cakePHPでのCSVダウンロード

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

アーカイブ