ロゴ
Dec 14

URLを渡すとページの内容(htmlソース)をJSONPとかで取得できるAPIをYahoo! Pipesで作った(管理人日記) - むぅもぉ.jp
Big Sky :: JSONでHTMLを取得するYahoo! Pipesが凄い

このAPIで、SafariのWebクリップみたいなことができるじゃないかと思い、ちょっとブックマークレットを作ってみた。
ブックマークレット何!?って人は、こちらを参照。
いやぁYahoo! Pipesすごいな!!あと、ぷーるさんに感謝。

[Yahoo!Japanのトップニュース](このリンクをブックマーク)

実行すると、

こんな感じでYahoo!Japanのトップニュースが表示される。
Firefox2/Safari3/Opera9では動作OK。

ブックマークレットは作ったこと無かったので弾さんがやっていた
メタブックマークレットタイプでやってみた。

ブックマークレットのソース

CODE:
  1. javascript:(function(u){var s=document.createElement('script');s.charset='UTF-8';s.src=u;document.body.appendChild(s)})('http://www.ohmiyapatriots.com/blog/scripts/show_yahootopic.js')

スクリプトは↓

CODE:
  1. (function(){
  2.     var load_page = function(){
  3.         var url = 'http://www.yahoo.co.jp/';
  4.         var s = document.createElement('script');
  5.         s.charset = 'utf-8';
  6.         s.src = 'http://pipes.yahoo.com/poolmmjp/page_loader?url=' +
  7.             encodeURIComponent(url) + '&_render=json&_callback=show_yahoo_topic';
  8.         document.body.appendChild(s);
  9.     };
  10.     show_yahoo_topic = function(data) {
  11.         var div = document.getElementById('yahoo_topic') || create_element();
  12.         div.innerHTML = data.value.items[0].description.match(/<table.*\/table>/);
  13.         document.body.appendChild(div);
  14.     };
  15.     var create_element = function(){
  16.         var div = document.createElement('div');
  17.         div.id='yahoo_topic';
  18.         div.setAttribute("style","border:1px solid #9b72cf;background-color:#f1f1fd;" +
  19.         "width:224px;position:fixed;right:0px;top:0px;opacity: 0.8;");
  20.         return div;
  21.     };
  22.     load_page();
  23. })()

JSONPで呼び出される関数がどうしてもグローバルじゃないと呼び出せないので
もし、ページにshow_yahoo_topicという関数あったら汚染されるけど、まー大丈夫だと思う。
何かうまくやる方法あったら教えてください。

あと、Yahoo!Japanのトップページからトピックだけ正規表現で
引っ張ってきてるんだけども、トピックの部分だけ改行しないで1行で記述されているので、

<table.*\/table>

だけで取って来れてびっくりした。
(.は改行文字を除いた文字にマッチする表現なので)

最近Yahoo!Japanがたまに新デザインでサイトを表示するので
もしかしたらうまく動かないかもしれないのでご免なさい。
こんなことができるよという一例としてみてください。
ほんとFetch Pageモジュールはすごい!!
色々できそう (;゚∀゚)

このエントリをはてなブックマークに登録 このエントリを del.icio.us に登録 このエントリをlivedoorクリップに登録 add to Yahoo Bookmark

Dec 11

htmlで表を書こうとおもうんだけど

なんかtableタグ使うのはバカだみたいな風潮あるじゃない?
cssで表とかってどうかくの・・・?

以前同じように、”全部divで書くのが流行なんでしょ”と言っている人がいたことを思い出した。
なんでそう思うんですか?と聞いたら、だってAdobeがやっているからと言っていた。

その判断はどうかと思うがさておき、その人が参考にしていたAdobeのサイトはこれ
RSS Reader Demo - Spry Demo Gallery

でそのHTMLがこれ

もうこれでもかってくらいdiv使ってる(´∀` )
ここまで多用する意味はあんのかな?誰か教えてー

ただ、天下のAdobeがやっているとこれだけで、div病をまき散らす原因になるのかと思ったことを覚えている。
極端な例だけど、こんな感じでテーブルレイアウトを盲目的に駄目だと信じ込んでしまっていたり、div使いすぎのdiv病にかかってる人って案外まだいると思うな。

参考:
レイアウトはテーブルよりCSSですか? - 教えて!goo
caramel*vanilla - "DIV 病" という病
div病
テーブルレイアウトの光と影

このエントリをはてなブックマークに登録 このエントリを del.icio.us に登録 このエントリをlivedoorクリップに登録 add to Yahoo Bookmark

Dec 10

IMG_0670.JPG

週末、なぜかこの時期なのにマザー牧場に行ってきたので記録として残しておく。
3時半に着いたのだけれど、着いてそうそう4時までしかやってないと分かってかなりがっくりきた。
あと冬なので、寒すぎるし動物も心なしか弱っていた。

以下、その写真。

IMG_0692.JPG
色んな体験教室があって楽しそうだった。
でも、すべて受付終了していた。

IMG_0693.JPG
色んなイベントがあって、すごい面白そうだった。
でも、すべて終わっていた。

IMG_0671.JPG
牛がいた。
でも、見た瞬間家に帰る時間だったらしく、速攻帰って行った。

IMG_0676.JPG
ひつじがいた。
弱っているのか、犬に追いかけられずとも小屋に自分から向かっていった。

IMG_0691.JPG
いちご狩りができると思わしきところ。
一面緑しか見えないので、全然いちごがなってないのか、既に狩られ尽くされているのかのどっちか。

IMG_0684.JPG
景色はすごく綺麗だった。

結論としては、マザー牧場は春とかもっと暖かい時期に行った方がいいと思った。
どうやら、この時期はシーズンではないらしい。
また暖かくなったら、行ってみよう。

このエントリをはてなブックマークに登録 このエントリを del.icio.us に登録 このエントリをlivedoorクリップに登録 add to Yahoo Bookmark