英語 | 中国語
1 つまたは複数の(中断なく)検索エンジンを簡単に使用または切り替えます (または任意の Web サイトを検索します)。
初心者にも優しく、上級者にも満足。日常、娯楽、仕事に。
マルチエンジン Web 検索ツールに必要な基本機能が含まれています。
等々。上記の基本的な機能に加えて、次のこともできます。
など... Readme を読んでください
あらゆる場所を検索します ?️ あらゆるものを検索します ?。広さと集中力。
使用方法:
ブラウザ拡張機能 (推奨)
Web アプリ : デモ用。 Web アプリは拡張機能のように完全には機能しません。 Webアプリはモバイルブラウザ上で利用できます。
拡張機能を使用する | 幅広さと集中力 | 選択可能なUIスタイル |
---|---|---|
コンテキスト選択検索 | さまざまな UI の適応 | Vem (ヴィミウム様) |
検索エンジンを編集する | 特別な検索方法、柔軟性と拡張性 | |
完全な紹介と説明のビデオ (Youtube) (見たい章を選択してください):
記事を翻訳したい場合などに便利です
- Firefox シークレット モードではいいえ (バグ 1380812)
Ctrl+Alt+S
Chrome およびその他: Ctrl+Shift+S
Ctrl+Alt+D
Chrome およびその他: Ctrl+Shift+D
Firefox での変更 | Chrome での変更:
chrome://extensions/shortcuts
!bang
またはomnibox を使用したことがある場合は、コードを記憶する必要があります。
一方、Big Search の Vem モードでは、キーボードを使用してさまざまな検索エンジンのさまざまなボタンを (中断せずに) クリックできる利便性と機能が視覚的に提供されます。 Shift+Enter
押して Vem モードに入ります
鍵 | 関数 |
---|---|
Shift+Enter | 入力を終了し、Vem モードに入る (Vem モードでない場合に使用) |
Shift+Enter | 上記の反対 (Vem モードの場合に使用) |
I | Vem モードを終了し、入力ボックスにフォーカスします |
1 ~ 9 | カテゴリの切り替え (Vem モード) |
A ~ Z | 対応するボタンを押します (Vem モード) |
J & K | 表を下/上にスクロール |
さらに追加される予定です... |
上記のキーバインディングは正式に決定されていません。ユーザーのフィードバックに応じて将来変更される可能性があります
新しいエンジンが追加された場合、ボタン キー ( A
~ Z
) のようにボタンのシーケンスが変更される可能性があることに注意してください。
答え:
一般的な GET/POST 検索フローは次のとおりです。
Big Search のページ内 Ajax レンダリング検索は次のとおりです。
ページ内 Ajax レンダリング検索機能は、一般向けに GET/POST 検索インターフェイスを提供していない Web サイト (SPA Web サイトなど)、または検索入口フォームでランダムなトークンを割り当てる必要がある Web サイトを検索するために使用できます。
「ページ内 Ajax レンダリング」は、「ページ内-submit-form-via- Ajax -then-XHR-gets-search-result-then -render -and-show-in-page-without-web」の略です。 -フレームナビゲーション"
この部分はビデオの説明でも説明されています
現在60歳以上。内蔵検索エンジンのリストを参照
オープンソース Web 検索 (マルチエンジン) ツールの比較
経験豊富なユーザーは、何が特別なのかをすぐに知るために直感的な水平比較を好む場合があります。 (ちなみに他の人のことも知っています)
オンライン GUI エンジン編集ツール (リンク 1) (リンク 2)
通常は上記のGUIエディタを使用します。 GUI を使用したくない場合 (例: 上級ユーザーで高度な機能を使用したい場合)、以下を読んでください。
Big Search ユーザーは、検索エンジンをプログラムで編集できます。このセクションの次の段落は、JSON 形式のエンジン データ仕様について説明します。両方の場合:
enginesdata.js
)非常に単純な JSON を記述し、 GET Method
に関する基本的な HTTP 知識があれば十分です。
{
"Google" : " https://www.google.com/search?q={0} " ,
"Yahoo Search" : " https://search.yahoo.com/search?q={0} "
}
上記は単純で正しいですが、プログラマーの場合は、表示名をキーとして使用することはお勧めできません。少なくとも次のようなことを行う必要があります。
{
"yahoo" : {
"dname" : " Yahoo Search " ,
"full_url" : " https://search.yahoo.com/search?q={0} "
}
}
完全な形式を使用すると、このツールのすべての機能を使用できるようになります。
また、短い形式の要素と完全な形式の要素の混合もサポートされています。
{
"yahoo" : {
"dname" : " Yahoo Search " ,
"addr" : " https://search.yahoo.com " ,
"action" : " https://search.yahoo.com/search " ,
"kw_key" : " q "
},
"google" : {
"dname" : " Google " ,
"addr" : " https://www.google.com " ,
"action" : " https://www.google.com/search " ,
"kw_key" : " q " ,
"btns" : {
"search" : {
"label" : " Google Search "
},
"lucky" : {
"label" : " I'm Feeling Lucky " ,
"params" : [
{ "key" : " btnI " , "val" : " 1 " }
]
}
}
},
"label_mbap" : { "lstr" : " Cross-engine " },
"itunesapps" : {
"dname" : " iTunes Apps (Google) " ,
"addr" : " https://www.apple.com/itunes/charts/free-apps/ " ,
"btns" : {
"search_apps" : {
"label" : " Search Apps " ,
"kw_format" : " {0} site:apple.com/*app " ,
"use_other_engine" : {
"engine" : " google " ,
"btn" : " search "
}
}
}
},
"label_usaj" : { "lstr" : " Search In-page-Ajax-render web " },
"chrome_ext_dev" : {
"dname" : " Chrome Ext Dev Doc " ,
"addr" : " https://developer.chrome.com/docs/extensions/reference/ " ,
"action" : " https://developer.chrome.com/docs/extensions/reference/ " ,
"ajax" : " .search-box__input "
},
"label_many" : { "lstr" : " Many Engines at once " },
"many_once" : {
"dname" : " Many Engines at once " ,
"btns" : {
"gg_ddg" : {
"label" : " Google + DDG " ,
"use_other_engine" : [ " google " , " duckduckgo " ]
}
}
}
}
この部分はビデオの説明でも説明されています
JSON形式。
完全な形式のエンジン データには、次の Key-Value を含めることができます (特別な検索方法が含まれます)。
// # Some key-value in the button can override the key-value in the engine name
{
" engine_name " : {
" dname " : " Engine display name " ,
" addr " : " Homepage URL " , // # optional
" tip " : " Engine tip text " , // # optional
" action " : " form action url " ,
// # For example, https://search-engine.com/search?q=input_content,
// # The action is https://search-engine.com/search
" kw_key " : " The key name of the keyword in the query string " , // # In above example, it is q
" full_url " : " http://www.example.com/search/{0} " , // # optional. Only when GET method. Will override above two. The entire url
" method " : " get/post " , // # optional. default is get
" charset " : " UTF-8/gb2312/gb18030/big5/iso-xxxx.... " , // # optional. default UTF-8 (NOTICE: full_url not compatible with this
" allow_referer " : false, // # false(default)/true optional
" kw_replace " : [[" ", "-"]], // # Optional, characters that need to be replaced in the search term. In this example, replace spaces with '-'
" kw_format " : " formatted string with {0} " , // # optional. {0} is like %s
" params " :[ // # Optional, the key/value other than the keyword in the query string required for this operation. POST method may need
{"key": "key", "val": "value"},
// # For example, https://search-engine.com/search?q=input_content&option=searchall
// # so {key: "option", val: "searchall"},
],
" use_other_engine " : { // # optional, use another engine to do the operation.
" dbname " : " bigsearch/user/browser " , // # Optional. Where the engines database come from (3 available databases): BigSearch build-in database (default) / User custom database / Browser-installed database
" engine " : " engine name " ,
" btn " : " button name " // # Optional. Absence will make fallback to the first button
// # this entire object can be simplified to an engine name string
},
// # (if use array here, then do many operations at once)
" ajax " : ...... // # Optional. Read the In-page-Ajax-render websites instructions
" btns " : { // # optional. If there is no such item, a "Search" button is displayed, and clicking the button will do the default action
" Button name " : {
" label " : " Button display text " ,
" btn_tip " : " Tip text " , // # optional
" ... " : "..." // # here in a btn can be key-value pairs, which will override those in engine
},
....
}
},
}
この部分はビデオの説明でも説明されています
一部の Web サイトでは GET/POST 検索が提供されません (または HTML で結果が返されません)。訪問者はページを開いて入力する必要があり、Ajax を介して結果がページに表示されます。 (よくある質問を参照)
Big Search は、このようなページ内 Ajax レンダリング Web サイトを処理できます (ブラウザ Web に js を挿入し、入力、クリック、フォーム送信を自動化することによって)。設定も簡単です:
例1:入力ボックスのCSSセレクターを指定します。検索語を自動的に入力し、Enter キーを押すイベントをトリガーします。
"ajax" : " #search-box-input "
例 2: 2 秒の遅延 -> 入力 -> 1 秒の遅延 -> ボタンクリックイベントのトリガー
"ajax" : [ 2000 , " #search-box-input " , 1000 , " #submit-button " ]
この部分はビデオの説明でも説明されています
ユーザーは、カスタマイズした検索エンジン データを JSON としてフォーマットした後、ソース コードに送信することをお勧めします (ファイル
enginesdata.js
に送信)。
このツールはさらに改善できる可能性があります。
高速かつ軽量: フレームワークやライブラリへの重い依存関係はありません。シンプルさと派手さの両方の UI テーマを備えていますが、主要な機能と UI はすべて純粋な JS + CSS です。
LZ-UTF8.js (38kB は縮小されていません。データ圧縮ライブラリ、ユーザー カスタム エンジン同期のみ)
Copyright (c) 2021, Rotem Dan
Released under the MIT license.
霧の湖 (37kB webp. デフォルトの背景写真)
クアン・グエン・ビン著
ユニコンアイコン (SVG)
Iconscout によるユニコン
現在サポートされている言語は 2 つだけなので、フレームワークはまだ使用されておらず、多言語を実装するための単純な関数のみが存在します。
多言語にする文字列の場合は (英語のみのままでも問題ありません)、JS 関数i18n()
を使用します。その入力パラメータは次のとおりです。
[0]
は中国語、 [1]
は英語{zh: "This is Chinese, en: "This is English", fr: "This is French"}
のようなオブジェクト対応する言語の文字列を返します
特定の言語のユーザーのみを対象とする検索エンジンを追加する場合は、 visible_lang
使用して、特定の言語のみに表示されるようにすることができます。
このツールのコードの一部は 2008 年頃に遡ることができます。2015 年にインターネット上で一般に使用できる Web アプリが公開されました。2020 年代初頭まで、webExtension と JS が標準化されていることを発見したため、このツールをブラウザ拡張機能として作成し、 Github リポジトリをセットアップします。 (はい、フルタイムではなく、ゆっくりと穏やかに開発されます。)
一部のコードはこれまでにリファクタリングされています (そして今後もリファクタリングされる可能性があります)。まだ古い部分もいくつかありますが、このツールは常に最新で、便利で便利です。
コードは AGPL に基づいてライセンスされています。
変更ログ