ニコニコ動画のサムネイルをはてなブックマークのエントリー画像にしようとしたけど出来なかった(またはニコニコ動画のサムネイルの取得の仕方)

いつぞやの更新(かなり前/忘れた)から、はてなブックマークでブックマークする際にそのエントリーの画像をサムネイルとして指定できるようになっていますが、そこで指定できる画像は「その画面に表示されている画像」に限られています。関係ありそうでも表示されていなければ指定できないし、文脈と一切関係なくても表示されてさえいれば一覧に出てきます。



で、ニコニコ動画の場合「サムネイル画像」という表紙みたいな画像があるんですが、通常動画画面には表示されないのでこのはてなブックマークの画像一覧にも出てきません。で、もしかして無理矢理画面内に表示させたら画像として指定できるんじゃないかと思ってやってみたら、確かに一覧には出てきて画像も選択できるんだけど、指定は出来なかった。まぁ当たり前か。そこ制限しておかないと無秩序になっちゃうもんね。



ニコニコ動画の動画ページにサムネイルを表示するGreasemonkey

でっち上げたGreasemonkeyはこれ。




これを入れて動画ページを見ると、サムネイルがこんな風に表示される。
(テストなので場所は適当)




はてなブックマークの投稿画面(Firefox拡張)でもこの通り。




まぁでも指定は出来ないんですけど。やるだけやってみたってことで。

サムネイルのURLはソースの中に書かれてるわけだから、それで抽出して欲しいとか思うんだけど、ニコニコ動画だけ対応するわけにはいかないと言うことなんでしょうかね。



ニコニコ動画のサムネイルの取得の仕方

サムネイルのURLはAPIでも叩いて取得するのが本筋なんでしょうけど、Gresemonkeyの場合(もしくはスクレイピングする場合)には本文中にあるデータを拾うのが簡単です。

本文中にはグローバル変数Videoを使って以下のように動画データが埋め込まれています。



なのでそれを使って上手いことやってやれば、主要なデータは取得できるという話。
例えば動画IDならこう。

unsafeWindow.Video.id


まぁ役に立つかはさておき、雑学的な意味で。