ニコニコ動画の公開マイリスト検索(/openlist/sm****)は、AND検索もOR検索もNOT検索もできるっぽい
これは普通に有名なネタ?(有名なネタなら申し訳ないorz)
ちょっとググった感じだとそれっぽい記事が見つからなかったので、一応あらましも含めてメモ。
きっかけは、友人との会話
友人> ニコニコって面白い動画探しにくいよね。私 > まーそうだねー。ランキングに無い動画で、面白いものを探すのは難しいかもね。
友人> 自分のマイリストに登録してある動画と、同じ動画を登録してる人とか探したいよね。
私 > いや、それ公式の機能((各動画ページの「マイリスト登録一覧」リンクから行ける「動画 sm**** を登録している公開マイリスト」ってページ))であるじゃない。
あーでも、あれって1つの動画に対してだけか?友人> んじゃ、適当に作っといて。
私 > (;´Д´)・・・
ということで、最初はGreasemonkeyでごりごり公開マイリストページ持ってきて、
公開マイリストAに含まれるマイリスト配列Aと、公開マイリストBに含まれるマイリスト配列Bを作って、
for文ぐるぐるまわして配列AとBのANDを取ってやろうと考えた。
マイリストの件数が少なければそれでもいいんだけど、たとえば みくみくにしてあげる とか 陰陽師 みたいなレベルになると、
それだけで何百、何千とページ持ってこないとなわけで*1、それはどー考えてもやっちゃいかんだろうから、
やっぱ無理なのかなーと困っていた。
で、APIとかないのかなーと探してみたけどそれらしいものも見つけられず、
諦めかけてた時に、だめもとで普通の検索エンジンのAND検索と同じように
http://www.nicovideo.jp/openlist/sm1097445+sm9
こんなURLを直打ちしてみたら、ちゃんとAND検索できた(・∀・)!!
という感じです。
ちなみに、どうやらOR検索もできるっぽい。
例えば、http://www.nicovideo.jp/openlist/sm17296 と http://www.nicovideo.jp/openlist/sm11543 とかで、
それぞれHIT件数は、1件、9件だけど、http://www.nicovideo.jp/openlist/sm17296+OR+sm11543 こんなURLを直打ちすると、
ちゃんとOR検索できていて、結果は10件になる。
さらにさらに、NOT検索もできて、
http://www.nicovideo.jp/openlist/sm11543+OR+sm17296+-sm189757
こんなURLを直打ちしてあげると、sm189757を含むマイリスト(この例だと「お気に入り」って名前のマイリスト)が1つ消えて、
結果は9件に。
スバラシィ。
こんだけちゃんと作ってあるのに、なんでそれっぽいフォームを設けてないんでしょうね。
ってことで、Greasemonkeyでそれっぽいフォームを設置してみたけど、
それはニコニコ関係のGreasemonkeyばっか公開してる下のサイトで。
++ Script for oneself ++: ニコニコ動画のマイリスト検索をしやすくするGreasemonkeyスクリプト
これで少しは、面白い動画を探しやすくなるかな?
*1:公開マイリスト1ページに10件のマイリストしか表示されないので