CREATIONS-1-

もじばけらった

もじばけらった

入力された文章を様々な文字コードに相互変換させて表示する、文字化けの解読を助けるサービスです。

Web Services

  • 入力された文章を様々な文字コードに相互変換させて表示する、文字化けの解読を助けるサービスです。
  • ご近所で頑張っているフリーランサー同士を結ぶ、仲間探しサービスです。
  • ユーザー登録には音源のアップロードが必須という、中級者以上に的を絞ったバンドメンバー募集サイトです。
  • 皆様からのご投稿情報を基に、かっこいいバナー・かわいいバナー・クリエイティブなバナーなどを収集・まとめて一覧できる、バナー専門のギャラリーサイトです。
  • Google・WIKIPEDIA・YouTube・twitter・facebookの5サイトの検索窓を1ページ内で統合させたウェブサービスです。
  • YouTubeにアップロードされている二つの動画を同時再生して、混ざり合う音声を楽しむウェブサービスです。
  • オンラインで複数人とのリアルタイムなブレーンストーミングが出来て、出たアイディアはcsvファイルでダウンロード出来るというウェブサービスです。
  • 複数のRSSフィードをひとつのタブにまとめて読み込み、そんなタブを最大5つまで表示させるスクリプトジェネレーターです。

WordPress Plugins

  • A8.netをはじめとした、各種バナー広告をWordPress上で管理するためのプラグインです。
  • JavaScriptで作られたBSDライセンスの「snowstorm.js」を使って、webページ上に幽玄閑寂の如く「雪を降らせる」という、なんとも情緒あふれるプラグインです。
  • 記事の冒頭に「記事を全て読み終えるまでにかかる、おおよその所要時間」を表示させるプラグインです。

Other Creations

  • 2011年3月14日作成。当バナーにおける一切の著作権は放棄しています。出来る人が、出来る事を、出来る範囲で。
  • 商用利用、全然OK!バックリンクも使用報告も要りません!使用に関して、一切の制約はありません!!そんな壁紙です。
  • いま現在サーバの中にあるフォルダとファイルを表示するPHPファイルです。

AUTHORIZED BY-2-

smkn

Author

smkn(1979 / 5.22 / ♂)

Contact

Profile

東京都内でデザイン/コーディング/プログラミングからWEBマーケティング/SEO施策/ITコンサルティングまで、フリーランス「kiki verb」としてオールラウンド・クリエイターしています。
ホームページ制作・webサービス企画開発に関するご質問やご相談など、お気軽にどぞ☆

Skills

  • Photoshop
  • Illustrator
  • Flash
  • HTML
  • CSS
  • JavaScript
  • jQuery
  • PHP
  • PEAR
  • WordPress
  • MySQL

Tools

  • Photoshop
  • Illustrator
  • Flash
  • Firefox
  • Google chrome
  • Thunderbird
  • 秀丸エディタ
  • EmEditor
  • XAMPP
  • phpMyAdmin
  • FFFTP
  • WinSCP
  • Namery
  • DF
  • Devas
  • IcoFX
  • Color Dialog 003
  • QRWindow
  • Unlocker
  • Janetter

Pastime

  • 和太鼓
  • ドラム
  • バレーボール
  • 沖縄
  • 温泉
  • コーヒー
  • カクテル
  • 芋焼酎
  • あぐー
  • マーケティング理論
  • 宇宙物理学
  • 競馬
  • 麻雀
  • オートバイ
  • ネコ

RECENT SHOUTS-3-

htmlSQLよりアツい!?jQueryみたいにセレクタでHTMLをparse(解析)する「PHP Simple HTML DOM Parser」

2010年 02月 19日

  • このエントリーをはてなブックマークに追加
  • このエントリーをfacebookでシェアする
この記事の所要時間: 419

今週はてブでも大人気を博した記事「真面目にエロサイトを作ってみた【プログラマ編】|ASTRODEO」や、IDEA*IDEAさんでも紹介されていた、PHPHTMLparseするライブラリ「htmlSQL」ですが、解析するHTMLを指定するにはSQLちっくな書き方をするので、SQL自体に触れる機会の少ない方には手を出しにくいシロモノです。

SQLわかんないです>< もっとカンタンにparseしたいぉ☆ってゆー方に全力でゴリ押ししたいのが、今回紹介するMITライセンスのPHPライブラリPHP Simple HTML DOM Parser」です!

PHP5で書かれたこの「PHP Simple HTML DOM Parser」の最大の特徴は、解析したいHTMLをセレクタで指定できるってトコ。そう、まるでjQueryのように。

そんなワケで今回のエントリーは、jQueryみたいにセレクタでHTMLparseできるお手軽PHPライブラリPHP Simple HTML DOM Parser」のご紹介です。

セレクタでHTMLをparseする「PHP Simple HTML DOM Parser」

1.使用するための準備

まずは今回の主人公を狩りに行きましょう。

SourceForge.netの「PHP Simple HTML DOM Parserページ」に行き、緑色のDownloadボタンをクリックすれば自動でダウンロードが開始されます。

落としたフォルダ内の「simple_html_dom.php」ってのが主人公の彼で、他は全部サンプルとかマニュアルとかのファイルになります。

なので、実際に使う際はこの「simple_html_dom.php」だけをアップロードしてください。

2.全体的な基本設定と使用方法

例えば、mixiのトップページにあるロゴ画像を取得したい場合は、下記のように書きます。

<?php
include('../simple_html_dom.php');
$html = file_get_html('http://mixi.jp/home.pl');

foreach($html->find('#headerArea h1 a img') as $e)
    echo $e->outertext;
?>

いやー、なんてjQuery。

2行目でsimple_html_dom.phpを読み込み、3行目で取得したいページのURLを記述します。

で、5行目のfind()の中に、jQueryのような感じで「取得したい部分」を記述します。

あとは6行目で取得する範囲を「outertext」ってカタチで選んでいます。

取得する範囲の指定は、innertext(”取得したい部分”を含まない)、outertext(”取得したい部分”を含む)、plaintext(”取得したい部分”のテキストだけを取得する)といった感じで指定してきます。

例えば下記のように記述すれば、Yahoo画像検索の結果を抽出するコトも余裕で可能です。

<?php
include('../simple_html_dom.php');
$html = file_get_html('http://image-search.yahoo.co.jp/search?ei=UTF-8&fr=top_ga1_sa&p=sexy');

foreach($html->find('#yschres .grid img') as $e)
    echo $e->outertext;
?>

ね?ヤバくね?

3.全体的な基本設定と使用方法

他にも詳しい説明や使い方などは、PHP Simple HTML DOM Parserマニュアルページにてご確認下さい。

idやclassは”div[id=○○○]”みたいな書き方での指定もできるみたいですし、「取得したい部分」のタグ自体を取り出すコトもできるみたいです。

4.最後に

コレを上手に使えば、結構いろんなWEBサービスのネタをカタチにできるんじゃないでしょーか。

現在進行中のプロジェクトですので、もしバグ等を発見した場合はぜひ報告して、より良い未来を築き上げていこうじゃありませんか諸君!

なにはともあれ、このような偉大なライブラリの作者方にご加護と栄光あれ!

PHP Simple HTML DOM Parser

最初htmlSQLを調べてた時、SNOOPYってライセンスGPLじゃん!って思ってアタフタしましたが、どーもhtmlSQLに同梱されてる”snoopy.class.php”ってのはLGPLみたいですね。

それなら外部ライブラリとして使用するには問題なく使えますから、htmlSQLがBSDライセンスってのも合点がつきました。

いやー、ライセンスってムズカシイ。

  • このブログのRSSを購読する
  • このブログをtwitterでつぶやく
  • このブログをFacebookで共有する
  • このブログをはてなブックマークで共有する

Search

  • Recent
  • Random

Contact

お名前※必須

ご連絡先メールアドレス

お問い合わせ内容※必須


Advertisement

Affiliate

Advertisement