どこでもスターグリースモンキーを公開しましたよく出来てる。AutoPagerizeのSITEINFOのように、サイト管理もはてなpre記法で書け、色んなサイトに対応出来るように見える。
はてなスターをさまざまなサイトに付けられる「どこでもスター」グリースモンキーを公開しました。
http://s.hatena.ne.jp/js/HatenaStarEverywhere.user.js
また、同時にさまざまなサイトの設定情報を共有できるSiteConfigWikiもオープンしました。
http://s.hatena.ne.jp/siteconfig
どうぞご利用ください。
でもこれって、「○○○のサイトに、はてなスターが付けられるグリモン書きました!」って事が出来なくなるんですよね。
ハッカー殺しとは言いませんが、以前「[再考]twitterが何故ウケるのか?」という記事で書いたように、良いサービスというのは
少しでも開発者が介入できるスキがあるか
あと細かい話だが、上記引用部にあるリンクのsiteconfigで記述出来るセレクタは、Ten.jsというライブラリを使ったCSSセレクタを採用しており、XPathの様に柔軟ではない。
例えば、IDもCLASSも振られていないノードの、2個次のノードにスターを付けたいとか、そのノードの親ノードを辿りたい場合には、向かない。
現に、このsiteconfig自身にはてなスターを付けられるように考えて見たが、ノード階層が
<h2><a href="hosturl">hostname</a><h2>
<div class="section-menu">
...
</div>
<div class="section">
<pre>
...
</pre>
</div>
となっており、IDもCLASSも付けられていないh2要素をエントリ郡として扱う為には、h2と書くしかない。これによってスターを付けるcontainerにはa要素を指定するしか無くなり、結果スターをクリックした瞬間にa要素が反応してしまう事になる。まぁ、これはsiteconfig自身の問題で、h2要素からdiv要素までを纏めるdiv要素を作って貰えれば対応出来る話だが、XPathなら既存のHTMLでもまったく問題ない。
出来る事ならば、Web::Scraperの様にXPathもCSSセレクタも両方使える様にするのがいいんじゃないかなと思った。