Creazy!

WEBエンジニア・ヤガーのテック・ガジェットブログ

Bookmarklet 開発実績

EXIF情報を一覧表示するブックマークレット「EXIF EXISTS ?」を作りました

投稿日:


WEBページに表示されている画像のEXIF情報をザザーと一覧表示するブックマークレット(というかWEBサービス)「EXIF EXISTS ?」を作ってみました。
EXIF EXISTS ? | あるWEBページ上の画像EXIF情報をまとめて一覧表示
EXIF EXISTS ?
イグジフ・イグジスツ」とでも読んでみようかと思う。
毎度ながら舌を噛み切りそうな名前をつけるオレ。
そして、自分でもウマく読めないorz
使い方はいたって簡単。
EXIF EXISTS ?のページに行って、調べたいWEBページのURLを入力するか、調べたいWEBページを開いた状態で下記ブックマークレットを実行すれば、そのWEBページに表示されている画像からEXIF情報を取り出し、一覧表示します。
EXIF EXISTS ?(Bookmarklet)

EXIF EXISTS ? を作ったきっかけ

先週、紫色の何かを口に押し付けているすごい人が面白いサービスを作っていたわけで、

仕組みは単純で、ブログに埋め込まれている JPEG ファイルを探して、EXIF データがあればその Model, Make をみてメーカー・機種名を出しています。

via: ブログの画像からカメラ携帯の機種を調べてみる: blog.bulknews.net

携帯の機種がさくっと分かってスゲーなーとか思っていたんだけど、EXIFにはもっと色んな情報が入っているし、ウマい写真撮る人がどんなデジカメ使っているかとか、ISOとか露出とかこのくらいでこんな色か、みたいな事を写真と見比べながら確認できたらすごい勉強になるなぁと思って(オレが)。
自分の周りに写真好きが異常に多い事もあって、結構需要は多いんじゃないかと勝手に思っています。

仕組み等を紆余曲折

実はEXIFなんて簡単に取得できちゃうんですが、JSONで取得できるAPIまでありましたよ。

デジタルカメラなどで撮影した画像ファイルに含まれるExifメタ情報を取得し、JSON形式で出力するサービスを作ってみました。

via: Exif JSONサービス – Ogawa::Memoranda

で、当初これを使ってサクッと!と思っていたんですが、うまくEXIFを取得できない画像が多いように感じたので、

巨大なサムネイルデータをExifとして持つような画像ファイルには対応できません。

via: Exif JSONサービス – Ogawa::Memoranda

しかたないので、自前で実装しました。といってもPHPだと関数一発、ファイト一発。

array exif_read_data ( string $filename [, string $sections [, bool $arrays [, bool $thumbnail]]] )

via: PHP: exif_read_data – Manual

EXIF情報が配列で返ってくるのであとは並べるだけ。
あ、そうそうEXIFの前に対象の画像URLを取得しなきゃいけないので以下のような手順をふんでます。
 1)指定されたURLのHTMLを取得
 2)HTMLからIMG要素を正規表現で抜き出し
 3)IMG要素のリストからSRC属性を抜き出し
 4)SRC属性のリストからEXIFに対応しているJPEG/TIFFの画像のみ取得
 5)EXIF取得
 6)一覧表示
おおざっぱすぎるけどまさにこんな感じ。

ご意見ご感想お待ちしています

写真(やカメラ)の知識が足りないので、一般的にEXIF情報の中で何の項目を確認したいか良く分からず。しかも、一覧表示にするのである程度項目は絞らなきゃいけないなと思ったので結構悩みました。結局、Flickrとか他のフォトサービスを参考に表示する項目を決めましたが、何かお気付きの方がいましたら情報頂ければと思います。あと、やっつけで作ったのでバグあるかも。そんな落とし穴を見つけた場合もフィードバックしてもらえるとなお嬉し。

EXIFについて改めて考える
動画を楽しもう!(Youtubeの動画を片っ端からダウンロードするブックマークレット)
第13回:URLエンコードとURLデコードを簡単にするブックマークレット
第11回:引用(blockquote)を簡単にするブックマークレット
第9回:閲覧しているサイトへのリンクタグを生成するブックマークレット
第6回:TinyURL の遷移先が怖くて開けない場合の対処法

-Bookmarklet, 開発実績

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

livedoor Readerにソーシャルメディアのカウンターを表示するUserScript「LDR with Social Media Counter」

ボク自身ツイッターツイッター言ってますが、情報集めとしてはいまだにRSSリーダーも使っています。で、前にlivedoor Reader に色んなSBMのブックマーク数を表示するGreasemonkey …

TwitGIFの表示不具合解消のお知らせと、Twitter API制限への対応について

ここ最近TwitGIFが更新されないとか、新しく作れないなどの問題が起きていました。 実は、かなり前からTwitGIFのユーザー数の増加により、Twitter のAPI実行回数制限に達してしまい最新の …

Twitterのリストをタグクラウド風に見やすくするブックマークレット「Twitter Lists Cloud」

先週、公式に開始した Twitter のリスト機能ですが、すでにたくさんのリストが作成されてみなさん有効に使っているようですね。リスト機能の使い方などについては色んなところに書かれていますのでこのエン …

SBM Common API を作りました

たくさんあるSBM(ソーシャルブックマーク)サービスのユーザー数を簡単にブログに表示したり、各SBMのユーザー数をJSON(P)形式でまとめて取得できるAPIを作ってみました。 はてなブックマーク、d …

no image

YouTube HD Suite更新(ファイル名プリセット、fmt18復活)

YouTube HD Suite 公式ページ [C!] 先日のアップデートに続いて、要望も多かったものを修正しました。 fmt18(iPodサイズ)の復活 ダウンロード時にビデオタイトルがファイル名に …

スポンサードリンク

スポンサードリンク