meowの覚え書き

write to think, create to understand

検索したいキーワードを複数の検索エンジンで一斉に検索できるchrome拡張機能を作ろう

目次

背景

私はインターネット上の調査は基本的にchromegoogle検索を用いるのだが、他の検索エンジン(例えばduck duck goやyandex)の方が欲しい情報が見つかることが経験上増えた1

色々な検索エンジンを用いるために、chromeのタブを複数開いて、いちいち同じ検索ワードを打ち込むのは面倒なので、複数の検索エンジンに対して一斉に検索できるツールが無いか探した。


スポンサードリンク

既存のツール探し(失敗)

SearchOnce

自分のほしいツールとしては、「SearchOnce」というwebサイトがドンピシャだった。使い方は簡単で、キーワードと検索したいwebサイトを選択してボタンを押せば別タブで検索結果を開いてくれる。

ロジックはシンプルで "https://検索エンジン/q=<キーワード>"というURLを各検索エンジンごとに別タブで開いているだけである。

しかし、メンテされていないのか、ほとんどのサイトでうまく開けない。たとえば、duck duck goで”hello”というキーワードで検索をしてみると、 "https://www.searchonce.net/www.duckduckgo.com/?q=hello" というURLを開き、404ページになってしまう。

Search All

chromeプラグインなどが無いか探したが、所望のものは見つからなかった。一応近いものは「Search All」である。

検索結果の表示画面上部に検索エンジン切り替えボタンを並べたナビゲーションバーを出してくれるが、できればブラウザのタブ単位で出してほしい。

ツールを探して候補を試して「これじゃない」を繰り返していたのだが、埒が明かないので自分でツールを作ることにした。

chrome拡張機能の実装

使い勝手の観点から、chrome拡張機能として作ることにした。 とはいえ私にchrome拡張機能の開発経験はないし、JavaScriptもほぼわからないので、ベースをchatGPTに生成させて細かい部分を修正した。

名前は安直に「Multi Search」とした。

「Multi Search」をchromeから呼ぶと次のようなhtmlのポップアップが出る。

このテキストフィールドに検索したいキーワードを入れてエンターキーを押すか、「Search」ボタンをクリックすると、複数のタブで検索結果が開く。下図は"hello"で検索した結果。

内部ロジックのjavascriptコードは次の通り。コアの部分だけ抜粋している。なお、拡張機能自体のリポジトリはこの記事の末尾の付録に載せた。

やってることは、SearchOnceと一緒で、18~21行目で検索エンジンのURLに検索したいキーワードを(エンコードして)くっつけて、そのURLをchromeapiで別タブで開いているだけである。

URLは 2~6行目で登録している。検索エンジンを追加したくなったらここに追加する。

おわりに

ツールを開発したことで調査の手間が減り、調査がかなりしやすくなったので満足。

付録

拡張機能githubリポジトリのページはこちら。

github.com

リポジトリをcloneして、chromeの開発者オプションをonにした上で、ディレクトリを取り込めば使えると思う。
現時点ではgoogle, duckduckgo, yandexだけ入れているが、お好みで追加いただきたい。

なお、このリポジトリは参考実装の位置づけなので、メンテはしない予定。


スポンサードリンク


  1. 悪化しているとの報告もある。 https://gigazine.net/news/20240117-google-search-worse-seo-spam/