MediaLab Love Chapter 2

Assistance of MediaLab Love about Javascript test and more...

Google ブック検索で日本語文献のみ検索する

現在のGoogleブック検索では言語の指定が出来ないので、日本語の文献のみを検索するといったことが出来ません。漢字を使って検索すると、中国語の本が検索に引っかかることがあり使いにくいです。
これを改善するために、私は現在2つの方法を考えております。
1.URLに"hl=ja"を付加する
哲学 - Google ブック検索
(検索結果:841件)
哲学 - Google ブック検索(hl=ja付加)
(検索結果:822件)
これはあまり効果がありませんでした。
2.検索語以外に日本のみで使われる文字を付加する

javascript:(function(){if(document.domain.match(/google\.(co\.jp|com)$/)){var%20s=0;var%20sw=0;var%20eq=0;var%20maxq=31;var%20adduri;var%20newuri;var%20orh=new%20Array;var%20hira=new%20Array('\u3044','\u306e','\u3066','\u304b','\u306a','\u3067','\u3063','\u306a','\u3093','\u3068','\u3057','\u305f','\u306b','\u308b','\u3046','\u306f','\u3060','\u3089','\u304c','\u3059','\u30fc','\u3082','\u3092','\u307e','\u3042','\u3063\u3066','\u3057\u3066','\u3067\u3059','\u3066\u3044','\u306a\u3044','\u307e\u3059');var%20q=decodeURI(document.URL).match(/(as_(e|o|ep))?q=.*?(&|$)/g);for(var%20i=0;i<q.length;i++){var%20t=q[i].match(/[^=|&|\+|\u3000]+/g);s+=t.length-1;for(var%20j=0;j<t.length;j++){if(t[j].match(/^(OR|AND)$/)){sw++;}}}maxq=maxq-s-sw;for(var%20k=0;k<maxq;k++){orh.push(hira[k]);}if(document.URL.match(/as_oq=/)){adduri=encodeURI(orh.join("+"));newuri=document.URL.replace(/([&\?]as_oq=.*?)((&|$))/,"$1"+'+'+adduri+"$2");}else{adduri=encodeURI(orh.join("%20OR%20"));newuri=document.URL.replace(/([&\?]q=.*?)((&|$))/,"$1"+'+'+adduri+"$2");}document.location=newuri.replace(/([&\?]lr=)lang_ja(&|$)/,"$1");}})();

上記ブックマークレットを検索結果画面で実行してみてください。詳細は後に説明します。効果はかなり期待できます。