実験

ISBNをハイフン編集してJSONPで返すサービスを最新化してみた

Business::ISBNのデータを自分で更新出来たらなとモジュールを眺めるとデータはData.pmにあるらしい use Business::ISBN::Data 20081208; # now a separate module で、Data.pmでどのように持っているかというと %country_data = ( 0 => ['English speaking …

ハイフン無しのISBNを渡すとハイフン付きのJSONPを返すサービスを作ってみた

中身的にはBusiness::ISBN - work with International Standard Book Numbers - metacpan.orgを呼んでJSONPにして返すだけですが、ニッチな需要があるのでw 2008年10月ぐらい?のデータを元にしているので全部のパターンには対応出来ていないのが残念ではあ…

携帯百景でフォロー/フォロワーの差分を取ってみる

一ヶ月の出張予定が二ヶ月になって夏服しかなくてしょんぼりなid:natu_nですが、 長期出張中にドハマりしてるのが携帯百景(ケイタイヒャッケイ)、携帯電話で撮影した写真に文字をのせてwebにアップして、みんなにコメントをつけてもらったりつけたり出来るサ…

WWW::Mechanizeで入力フォームにない項目を送信するには

例えばWebで蔵書検索を行う館で元々ISBN検索出来る機能をフォームを変更することで検索機能を殺している場合に無理矢理Mechで送信すると $mech->select('code_genre1', '2'); $mech->submit_form( fields => { 'code_value1' => $isbn, } ); 当然の事ながら…

図書館の所蔵状況をスクレイピングするスクリプトをWWW::Mechanize::Pluggableを使って書いてみた

以前に図書館の所蔵状況を拾ってくるスプリプトをWeb::Scraperを使うように書き換えるという記事を書いたが、今回更に一歩進んでWWW::Mechanize::Pluggableを使うように書き換えてみた。 WWW::Mechanize::PluggableはWWW::MechanizeからWeb::Scraperを動かす…

県内図書書像マップの関連図書検索のロジックを変えてみた

WebcatPlusにISBNを喰わせて連想検索を行い、それぞれのISBNと書名をJSONで返す部分を書き直した。 以前、Web::Scraperでスプレイプしようとした時に図書情報のページの構造がtableのネストが多く、また書名やISBNの位置がかなり不定なのでちょっとムリかな…

Web::ScraperでXPath式を使ってパースする

今までHTML:TagParser*1で一生懸命切ったりはったりして所蔵検索の結果を組み立てていましたがWeb::Scraperを使うと同じ事がかなり楽にできるようなので試してみた HTML::TagParserだと 〜略〜 Readonly my $QUERY_URL_PREFIX => 'https://library.city.iwak…

Amazonに図書館の検索結果を差し込むGreasemonkey

だいぶほったらかしになっていたAmazonの商品詳細ページから図書館の蔵書の有無を調べるGreasemonkeyの更新なのですが、 大まかに動作が確認出来たので再度途中経過など大きな変更点としては、所増の有無の判定にXPathを使う事と検索中のメッセージを表示す…

はてなフォトライフの画像を外部のblogに簡単に貼れるように画像へのurlを表示されるユーザスクリプト ーその3ー

Greasemonkey専用と割り切って更に直してみた 主な修正点 ノードの取得をXPathで書き換えた alt,title属性を付けるようにした 文字列の作成方法を変更したちまちまと組み立てるのではなくcreateElementでエレメントを作成して最後にinnerHTMLで文字列に変換 …

はてなフォトライフの画像を外部のblogに簡単に貼れるように画像へのurlを表示されるユーザスクリプト ーその2ー

[id:sanbo-n:20080508:1210242770]で紹介されていたのでちょっと体裁を整えた コピーしたいテキストボックスの上でトリプルクリックで全選択してコピペして使ってください titleやaltに"by ユーザ名,on Hatenafotolife"的な文言を付けようかと思ったけれどど…

はてなフォトライフの画像を外部のblogに簡単に貼れるように画像へのurlを表示されるユーザスクリプト

[id:sanbo-n:20080506:1210084239]で画像の詳細でurlわかるからコピペでいいんじゃないか的なコメントしたのだけれど、なんか微妙なニュアンスなレスが返ってきたのでユーザスクリプトを書いてみた。 こんな感じで画像の下にimgタグが表示されるのでコピペで…

twitxrのAPIを使ってPublicTimelineに流れる画像をダラダラ眺める何かを作ってみた

結構海外のパブリックタイムラインで流れる写真が面白いのでダラダラと眺めると面白いかなと思い勉強がてら作ってみました 今回初めて使うJQuery Cycle PluginはjQueryのスライドショーを行うPlugin 色々なエフェクトがあるけれど今回は画像が動いたりせずに…

Twitxrの位置情報をなんとかしたい

最近Twitterに写真をPOSTするためにTwitxrを使っているのだけれど、今使っている携帯電話がGPSがついていないため(DoCoMoSO703i)位置情報を手で入力しなければならないのが面倒*1 で、こんな感じでどうにか補ってますよ的な記事をhttp://twitter.g.hatena.ne…

途中経過

タイムアウトの処理は大体こんな感じ window.setTimeout(function () { if (レスポンスがない?) { エラーメッセージをセット 表示ルーチンを呼ぶ } }, ミリ秒 ); 指定したミリ杪経過したら記述した関数が実行される GM_xmlhttpRequestのonloadの処理がまだ…

GM_xmlhttpRequestのonerrorが上手く動かない?

図書館側のサーバがメンテナンス中であったりパッケージが変わってURIが変わったりした時に状態を表示するところまで出来て完成かな?と思っていたけれど GM_xmlhttpRequestのonerrorコールバックって上手く動いていないのではないかしら? そもそも名前が引…

Greasemonkey版の更新方針

どのブラウザでも動作するユーザスクリプトを一通り更新した所でGreasemonkey専用版も更新という段階で、Greasemonkey以外でも動作するといいなと思い色々調べたがやっぱりGM_xmlhttpRequestに相当する関数が無いのでダメだという結論に到達した。 自分のサ…

FLOT グラフを描画するPlugin その3

FLOTがバージョンUPされています Flot Examplesを眺めていたら、グラフのサンプルが増えていて、もしやと思いGoogle Code Archive - Long-term storage for Google Code Project Hosting.を確認すると新しいバージョンが来ていた(0.3 -> 0.4) かなり変更点…

FLOT グラフを描画するPlugin その2

データ抜けを自動で補完する機能を抑制する方法 結論から言うと一つのデータ群としては出来ず、データ別けるしか無いようです。 var d1 = [ [1, 96], [2, 89], [3, 85], [4, 90], [5, 87], [6, 86], [8, 83], [9, 86], ]; var d2 = [ [1, 137], [2, 135], [3…

グラフを描画するPlugin

しばらく前にjQueryを使わないjsを試していたのだけれどデータをXMLでやり取りするのが面倒だったりしてほったらかしにしていたのだけれど たまたま、jQueryのPluginでFLOTというのを見つけて、プロットデータが普通のJSONなのでちょっと試してみた 前のJSだ…

作る前にCPANを探せ

折角MacBookが手元にあるのに、毎回一々サーバにUploadしてTRY&ERRORというのもかなり馬鹿馬鹿しいなと思っていたが、 当然@NICの位置もサーバと違うのでエラーが無くなった後に書き換えてUploadというのもどうか?という事でほったらかしにしていた。 先日…

XPath式が便利すぎる件

所蔵マップでISBNで検索する時にAWSを使って情報を持って来ているのだけれど、折角だからAmazonの「この商品を買ったひとはこんな商品も買っています」みたいな見せ方で、そのジャンルのトップセールが表示したらどうだろうか?なんてことをふと思った ざっ…

古いスクリプトを見直してみる - 2 -

今日はISBNのハイフン編集編 実際のコード 最初に書いたサブルーチン(を多少書き直したもの) #!/usr/bin/perl use lib '/home/natu-n/perl/lib/perl5/site_perl/5.8.8'; use lib '/home/natu-n/local/lib/perl5'; use strict; use warnings; use Readonly; u…

古いスクリプトを見直してみる - 1 -

最近、ちゃんとしたPerlの本を読み始めたので古いスクリプトを書き直して実行速度と読みやすさを調べてみた。 第一弾はISBN10からISBN13への変換ルーチン 実際のコード 最初に書いたサブルーチン(を多少書き直したもの) #!/usr/bin/perl use lib '/home/natu…

たまには完全に自分用のもの作りでも その2

昨日のJavaScript charts for web & mobile | FusionChartsをダウンロードして早速試してみた サンプルデータやドキュメントが結構入っているが、実際に必要なものはコアとなるJSが一つとそれぞれのレイアウト用のSWFだけのシンプルな構成*1 ザックリとサン…

たまには完全に自分用のもの作りでも

最近、寒さと怠けで血圧が上がり気味で流石に不味いなという事で、ここ半年位つけていなかった朝晩の血圧測定を再開しようと思ったのだが、忘れていると血圧計のログがサイクリックしてしまうのと、一々PCを起動してExcelに入力するのがネックになってついつ…

jQueryUIのui.sortable.jsを使ってボックスをドラッグ&ドロップで入れ替える

今後作成するページの為に練習をかねてモックアップを作ってみた 最初の状態 非同期に検索結果を表示 所蔵している館はレのアイコン、していない館は×のアイコンを表示 ドラッグすることでボックスの入れ替えが可能(もちろん検索中でも) 今日学習した所 ui…

jQueryその7 thickbox.jsのiframeを表示させると微妙にセンターがずれる件を調べてみた 解決?

結論 色々調べた結果、CSSであらかじめ縦スクロールバーを表示しておくことでOperaも正しく表示出来るとのことで早速試してみた 1px下にはみ出してスクロールバーを表示させる html { margin-bottom:1px; height:100%; } 表示させた結果 Firefox2.x 問題なし…

jQueryその6 thickbox.jsのiframeを表示させると微妙にセンターがずれる件を調べてみた

かゆい所 デフォルトのCSSでは画面の半分の位置から4pxのborderを付けて描画するような指定になっているけど #TB_window { position: fixed; background: #ffffff; z-index: 102; color:#000000; display:none; border: 4px solid #525252; text-align:left;…

jQueryその5

今回実験しているところ いよいよThickBoxで検索結果を表示するところに取りかかったのですが、なんとGrayBoxには有ったフルスクリーンで表示するという機能がないことに気がつきました。 もちろんheightとwidthをパラメータで与えてあげれば出来ないことも…

jQueryその4

今回実験しているところ 元々の冗長すぎるロジックを見直しながら固定でISBNを投げて検索結果を表示するところ迄、以外にすんなり出来たのだけれどIEではエラーにならないにも関わらずまともにマップが表示出来ないという現象が発生、散々悩んだあげく「IEer…