AutoPagerizeswdyh
2007 9/15 Shibuya.js
自己紹介
はてなダイアリー SWDYHhttp://d.hatena.ne.jp/swdyh/
ふだんは
フリーランスのような
ニートのような
AutoPagerize
次のページを自動で読み込み、
今のページの下に継ぎ足して表示する
Greasemonkey Script
demo
自動でページを継ぎ足す仕組みは
GoogleAutoPagerとだいたい同じ
対応しているサイト
Google, Flickr,
del.icio.us, Yahoo,
YouTube, Twitter,
Tumblr...
どうやって複数の
サイトに対応しているのか
SITEINFO
AutoPagerizeを動かすのに
必要な情報のうち
サイトごとに違う部分をまとめたもの
url: http://(.*).google.*/(search|custom)*nextLink: id("navbar")/table/tbody/tr/td[last()]/ainsertBefore: id("res")/*[last()-1]pageElement: id("res")/div[child::div[@class="g"]]
SITEINFO sample
url
適用するURL
(正規表現)例:http://(.*).google.*/(search¦custom)*
nextLink
次ページのリンク
(XPath式)例:id("navbar")/table/tbody/tr/td
[last()]/a
insertBefore
どこに挿入するか
(XPath式)例: id("res")/*[last()-1]
pageElement次ページのうちの挿入する部分
(XPath式)例: id("res")/div[child::div[@class="g"]]
手順
nextLinkを使って
次のページのURLを
取得
XMLHttpRequest
で次のページを取得
pageElementを
使って、必要な部分
を切り出す
insertBeforeの位置
に切り出したものを
挿入
SITEINFO
2007 9/14
193個
どうやってこれだけの数
を作ったのか
一番重要なポイント
Wiki
だれでも追加や変更
が可能
ユーザー自身が
SITEINFOを作る
最初のころ
対応サイトは自分で
SITEINFOを作ったと
ころだけ
ある日、SITEINFOを
作っていないサイト
で動いた
別のユーザー(brさん)が
WikiにSITEINFOを
追加していた
Wikiの効果が
初めて現われた
その後
徐々にSITEINFOは
増えていった
またあるとき
「YouTubeで動かないよ」
英語版YouTubeの
HTMLが変わってた
SITEINFOを修正
「youtube.com.br
で動かないよ」
えー、もう知らない
ダメ開発者
でもしばらくしたら
解決してた
ユーザーのひと(kuさん)
が直してくれていた
これもWikiを使った
ことの重要な効果
AutoPagerizeは
Wikiで管理している
情報をもとにして
GoogleAutoPagerを
いろんなサイトで使える
ようにしたもの
作ろうと思った
きっかけの話
GoogleAutoPager
by malahttp://la.ma.la/blog/diary_200506231749.htm
なんとかAutoPager
がいくつかでてきた
サイト独自の部分を切り
出せば、いろんなサイト
で使えるはず
でもそのときは
作らなかった
しばらく経ってから
Japanize
by Kazuho Okuhttp://japanize.31tools.com/
翻訳情報をWikiで
管理している
その仕組み
すごくいい!
そして考えたこと
機械には難しい、
人なら割と簡単な
もの、こと
そういう人の知識を
Wikiを使って集める
(集合知)
そしてそれを、
機械(プログラム)か
ら使う
プログラム + Wiki
(機械 + 集合知)
もっとこういうもの
があっていいはず
プログラム + Wiki
(機械 + 集合知)
というパターン
このパターンの何か
を作りたい!
何かないかなあ
あ、AutoPagerで
できるかも
というのが作ろうと
思ったきっかけの話
その後、
どう開発してきたか
ブログの [autopagerize]
を見てくださいhttp://d.hatena.ne.jp/swdyh/archive?word=%2a%5bautopagerize%5d
今後
AutoPagerizeの
スクリプトよりも
Wikiをなんとかする
AutoPagerizeで
使うためのWiki
もう少し広げて
プログラム + Wiki
というパターンを実装する
ためのWiki、WikiFarm
作る予定
関連するものの紹介
Pagerization
by ofkhttp://userscripts.org/scripts/show/7623
GoogleAutoPagerを
いろんなサイトで使えるようにした
Greasemonkey Script
AutoPagerizeよりやや高機能
外人に人気
Wikiを前提にしてない
AutoPagerizeとほぼ同時期に開発
相互に良い影響
AutoPager
(Firefox Add-on)
by Wind Lihttps://addons.mozilla.org/en-US/firefox/addon/4925
Firefoxの拡張機能にしたもの
XULのユーザーインタフェース
AutoPagerize IDE
by kuhttp://labs.gmo.jp/blog/ku/2007/07/
autopagerizexpath_autopagerize_ide.html
SITEINFOを作りやすくする
ブックマークレット
Firefox以外への移植
Opera
fub
Sleipnir(SeaHorse)
LDRize
by snj14http://userscripts.org/scripts/show/11562
LDRのような操作感を実現する
Greasemonkey Script
SITEINFOとWikiという仕組みを
使っている
お礼
mala, Kazuho Oku,
br, ofk, youpy, koyachi, ku ...
SITEINFOを書いてくれたひと、
AutoPagerizeのユーザー
とても感謝してます
ありがとうございます
ご静聴ありがとうございました