について、質問メールを頂いたので調べてみました。
Googleデスクトップ検索で”test”を検索してみたところ、
以下のようなURLになったので、
http://127.0.0.1:4664/search?q=test&flags=68&num=10&s=ZoDBIB5DxUVUQh9oa5fpdKn6zVA
“test” → “テスト” に変えて見たところ、
http://127.0.0.1:4664/search?q=テスト&flags=68&num=10&s=ZoDBIB5DxUVUQh9oa5fpdKn6zVA
「無効なリクエスト」と言われてしまう。
URLを直接変更するのではなく、Googleデスクトップ検索で”テスト”を検索すると、
以下のURL。
http://127.0.0.1:4664/search?q=%E3%83%86%E3%82%B9%E3%83%88&flags=68&num=10&s=MqeS2Ad2-EPMUhVeranCUF-Lp1I
“test”と”テスト”で検索したURLを並べてみる。
http://127.0.0.1:4664/search?q=test&flags=68&num=10&s=ZoDBIB5DxUVUQh9oa5fpdKn6zVA
http://127.0.0.1:4664/search?q=%E3%83%86%E3%82%B9%E3%83%88&flags=68&num=10&s=MqeS2Ad2-EPMUhVeranCUF-Lp1I
検索文字列が違ってるのは当然だけど、s=に続く文字列も異なっていた。
“ZoDBIB5DxUVUQh9oa5fpdKn6zVA”
“MqeS2Ad2-EPMUhVeranCUF-Lp1I”
これが何者かを調べたところ、
Query API Developer Guide – Google Desktop APIs – Google Code
によると、「security token」というものらしい。
検索文字列によって変わるってことは、外部から使えない??とか思ってたら、すぐ下の方に
Getting the Stored Query URL – Query API Developer Guide – Google Desktop APIs – Google Code
ってあった。
Stored Query というものがよく分からなかったけど、ストアドプロシージャとか、ストアドファンクションのような類であれば使えそうなので、書いてある通り、
レジストリ”HKEY_CURRENT_USER\Software\Google\Google Desktop\API\search_url”
に設定されているURL(自分の環境では、”http://127.0.0.1:4664/search&s=x24RLVrkvjGLijzu8wE1zMrW9As?q=”)をコピーして使ってみたところ上手くいった。
BkSearch.conf(EdSearch.confでも同じ)に書くと、
[Googleデスクトップ検索(&T)]
FrontURL=http://127.0.0.1:4664/search&s=x24RLVrkvjGLijzu8wE1zMrW9As?q=
Encode=UTF8
num=50とか加えておけば、検索数が50件になる模様。
[Googleデスクトップ検索(&T)]
FrontURL=http://127.0.0.1:4664/search&s=x24RLVrkvjGLijzu8wE1zMrW9As?num=50&q=
Encode=UTF8
この方法が未来永劫使えるのかは分からないけど、一先ずこれで行けそう。