영어 | 중국어
하나 또는 여러 개의 (중단되지 않는) 검색 엔진을 간편하게 사용/전환합니다(또는 웹사이트 검색).
초보자에게는 친절하고 전문가에게는 만족스럽습니다. 일상, 엔터테인먼트 및 업무용.
다중 엔진 웹 검색 도구가 갖춰야 할 기본 기능은 다음과 같습니다.
등. 위의 기본 기능 외에도 다음을 수행할 수 있습니다 .
등등... 계속해서 읽어보세요
모든 곳에서 검색 ?️ 모든 것을 ?. 폭과 초점.
사용 방법:
브라우저 확장( 권장 )
웹 앱: 데모용입니다. 웹 앱은 확장 기능처럼 완벽하게 작동할 수 없습니다. 웹앱은 모바일 브라우저에서 사용할 수 있습니다.
확장 프로그램 사용 | 폭과 초점 | UI 스타일 선택 가능 |
---|---|---|
컨텍스트 선택 검색 | 다양한 UI 적응 | Vem (Vimium 유사) |
검색 엔진 편집 | 특별한 검색 방법, 유연성 및 확장성 | |
전체 소개 및 지침 동영상(Youtube)(보고 싶은 장 선택):
예를 들어 기사를 번역하고 싶을 때 유용합니다.
- Firefox 시크릿 모드에서는 아니요(버그 1380812)
Ctrl+Alt+S
크롬 및 기타: Ctrl+Shift+S
Ctrl+Alt+D
크롬 및 기타: Ctrl+Shift+D
Firefox에서 변경 | Chrome에서 변경:
chrome://extensions/shortcuts
!bang
또는 검색주소창을 사용한 경우 코드를 기억해야 합니다.
반면 Big Search의 Vem 모드는 시각적으로 키보드를 사용하여 다양한 검색 엔진의 다양한 버튼을 (끊임없이) 클릭할 수 있는 편리함과 기능을 제공합니다. Vem 모드로 들어가려면 Shift+Enter
누르세요.
열쇠 | 기능 |
---|---|
Shift+Enter | 입력을 마치고 Vem 모드로 들어갑니다(Vem 모드가 아닐 때 사용됨) |
Shift+Enter | 위와 반대 (Vem 모드에서 사용됨) |
I | Vem 모드를 종료하고 입력 상자에 초점을 맞춥니다. |
1 - 9 | 카테고리 전환(Vem 모드) |
A ~ Z | 해당 버튼 누르기 (Vem 모드에서) |
J 앤 K | 테이블을 아래/위로 스크롤 |
더 추가됩니다 ... |
위의 키 바인딩은 공식적으로 결정되지 않습니다. 사용자 피드백에 따라 향후 변경될 수 있음
새 엔진이 추가되면 버튼 순서가 버튼 키( A
- Z
)와 같이 변경될 수 있습니다.
에이:
일반적인 GET/POST 검색 흐름은 다음과 같습니다.
Big Search의 In-page-Ajax-render 검색은 다음과 같습니다.
In-page-Ajax-render 검색 기능은 GET/POST 검색 인터페이스를 공개적으로 제공하지 않는 웹사이트(예: SPA 웹사이트)나 검색 입력 양식에 무작위 토큰 할당이 필요한 웹사이트를 검색하는 데 사용할 수 있습니다.
"In-page-Ajax-render"는 " In-page -submit-form-via- Ajax -then-XHR-gets-search-result-then- render -and-show-in-page-without-web의 줄임말입니다. -프레임 탐색"
이부분은 영상설명에도 설명되어있습니다
60+, 현재. 내장 검색 엔진 목록 보기
오픈소스 웹 검색(다중 엔진) 도구 비교
숙련된 사용자는 무엇이 특별한지 빠르게 파악하기 위해 직관적인 수평 비교를 선호할 수 있습니다. (다른 사람에 대해서도 알고 있습니다.)
온라인 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 형식입니다.
전체 형식의 엔진 데이터에는 다음과 같은 키-값이 포함될 수 있습니다(특수 검색 방법 포함).
// # 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
},
....
}
},
}
이부분은 영상설명에도 설명되어있습니다
일부 웹사이트에서는 GET/POST 검색을 제공하지 않습니다(또는 결과를 HTML로 응답하지 않습니다). 방문자는 페이지를 열고 입력해야 하며, 페이지에 Ajax를 통해 결과가 표시됩니다. (FAQ 참조)
Big Search는 이러한 In-page-Ajax 렌더링 웹사이트를 처리할 수 있습니다(브라우저 웹에 js를 삽입하여 입력, 클릭, 양식 제출을 자동화함). 구성도 쉽습니다.
예 1: 입력 상자의 CSS 선택기를 지정합니다. 자동으로 검색어를 입력하고 Enter 키를 누르면 이벤트가 발생합니다.
"ajax" : " #search-box-input "
예 2: 2초 지연 -> 입력 -> 1초 지연 -> 버튼 클릭 이벤트 트리거
"ajax" : [ 2000 , " #search-box-input " , 1000 , " #submit-button " ]
이부분은 영상설명에도 설명되어있습니다
사용자가 맞춤형 검색 엔진 데이터를 JSON으로 형식화한 후 소스 코드에 제출하는 것이 좋습니다(
enginesdata.js
파일로 제출).
이 도구는 더 많은 작업을 수행하도록 개선될 수 있습니다.
빠르고 가벼움 : 무거운 프레임워크나 라이브러리 종속성이 없습니다. simplify & fancy라는 UI 테마를 가지고 있지만 모든 주요 기능과 UI는 순수 JS + CSS입니다.
LZ-UTF8.js(38kB는 축소되지 않음. 데이터 압축 라이브러리, 사용자 정의 엔진 동기화에만 해당)
Copyright (c) 2021, Rotem Dan
Released under the MIT license.
Foggy Lake(37kB 웹. 기본 배경 사진)
꽝 응웬 빈(Quang Nguyen Vinh) 기자
유니콘 아이콘(svg)
Iconscout의 유니콘
현재 2개 언어만 지원되기 때문에 아직 프레임워크는 사용하지 않고 다국어 구현을 위한 간단한 기능만 있습니다.
다중 언어로 만들고 싶은 문자열의 경우(영어로만 남겨두어도 괜찮습니다) JS 함수 i18n()
을 사용하세요. 입력 매개변수는 다음과 같습니다.
[0]
은 중국어, [1]
은 영어{zh: "This is Chinese, en: "This is English", fr: "This is French"}
와 같은 객체해당 언어의 문자열을 반환합니다.
특정 언어의 사용자만 대상으로 하는 검색 엔진을 추가하려는 경우 visible_lang
사용하여 특정 언어에만 표시되도록 할 수 있습니다.
이 도구의 코드 중 일부는 2008년경으로 거슬러 올라갑니다. 웹 앱은 2015년에 인터넷에서 대중이 사용할 수 있도록 게시되었습니다. 2020년대 초반이 되어서야 webExtension과 JS가 표준화되었으므로 이 도구를 브라우저 확장으로 만들고 이를 위해 Github 저장소를 설정하세요. (예, 풀타임이 아닌 천천히 그리고 부드럽게 개발됩니다.)
일부 코드는 리팩토링된 적이 있으며 앞으로도 계속 리팩토링될 수 있습니다. 아직 오래된 부분이 있기는 하지만 이 도구는 항상 현대적이고 편리하며 유용했습니다 .
코드는 AGPL에 따라 라이센스가 부여됩니다.
변경 로그