Inglés | 中文
Utilice/cambie fácilmente uno o varios motores de búsqueda (ininterrumpidamente) (o busque en cualquier sitio web).
Amigable con los principiantes, satisfactorio para los expertos. Para uso diario, entretenimiento y trabajo.
Incluye características básicas que debe tener una herramienta de búsqueda web multimotor:
etcétera. Además de las funciones básicas anteriores, también puede :
y así sucesivamente... Continúe con el archivo Léame
¿Buscar en todas partes? ️ ¿Todo? Amplitud y enfoque.
Formas de uso:
Extensión del navegador ( recomendada )
Aplicación web: para fines de demostración. La aplicación web no puede funcionar completamente como una extensión. La aplicación web se puede utilizar en navegadores móviles.
Usar extensión | Amplitud y enfoque | Estilo de interfaz de usuario seleccionable |
---|---|---|
Búsqueda de selección de contexto | Diferentes adaptaciones de la interfaz de usuario | Vem (similar a Vimium) |
Editar motores de búsqueda | Métodos de búsqueda especiales, flexibilidad y extensibilidad | |
Vídeo de introducción completa e instrucciones (Youtube) (elige el capítulo que quieres ver):
Útil cuando, por ejemplo, se desea traducir un artículo.
- No en el modo incógnito de Firefox (error 1380812)
Ctrl+Alt+S
Chrome y otros: Ctrl+Shift+S
Ctrl+Alt+D
Chrome y otros: Ctrl+Shift+D
cambiar en Firefox | cambiar en Chrome:
chrome://extensions/shortcuts
Si has usado !bang
u omnibox, requieren que memorices códigos.
Mientras tanto, el modo Vem de Big Search le brinda visualmente comodidad y capacidad de usar el teclado para hacer clic (ininterrumpidamente) en los diferentes botones de diferentes motores de búsqueda. Presione Shift+Enter
para ingresar al modo Vem
Llave | Función |
---|---|
Shift+Enter | Finalice la entrada e ingrese al modo Vem (se usa cuando no está en modo Vem) |
Shift+Enter | Opuesto a lo anterior (usado cuando está en modo Vem) |
I | Salga del modo Vem y enfoque el cuadro de entrada |
1 - 9 | Cambiar de categoría (en modo Vem) |
A - Z | Presione el botón correspondiente (en modo Vem) |
J & K | Desplazar la tabla hacia abajo/arriba |
más por agregar... |
Las combinaciones de teclas anteriores no están determinadas formalmente. Puede cambiar en el futuro según los comentarios de los usuarios.
Tenga en cuenta que si se agregan nuevos motores, la secuencia de los botones puede cambiar, al igual que las teclas ( A
- Z
).
A:
El flujo de búsqueda general GET/POST es:
La búsqueda de renderizado Ajax en la página de Big Search es:
La función de búsqueda de renderizado Ajax en la página se puede utilizar para buscar sitios web que no proporcionan una interfaz de búsqueda GET/POST al público (por ejemplo, sitios web SPA), o aquellos que requieren un token aleatorio asignado en un formulario de entrada de búsqueda.
"In-page-Ajax-render" es la abreviatura de " In-page -enviar-formulario-vía- Ajax -luego-XHR-obtiene-el-resultado-de-búsqueda-luego- renderizar -y-mostrar-en-la-página-sin-web -navegación-frame"
Esta parte también se explica en la descripción del vídeo.
60+, actualmente. Ver lista de motores de búsqueda integrados
Comparación de herramientas de búsqueda web de código abierto (multimotores)
Los usuarios experimentados pueden preferir la comparación horizontal intuitiva para saber rápidamente qué es especial. (También conozco otros por cierto)
Herramienta de edición de motor GUI en línea (enlace 1) (enlace 2)
Generalmente, utilice el editor GUI anterior. Si no desea utilizar la GUI (por ejemplo, es un usuario avanzado y desea utilizar funciones avanzadas), continúe y lea a continuación.
Los usuarios de Big Search pueden editar los motores de búsqueda mediante programación. Los siguientes párrafos de esta sección tratan sobre la especificación de datos del motor en formato JSON. Para ambos:
enginesdata.js
) Solo necesita escribir JSON muy simple y tener conocimientos HTTP básicos sobre GET Method
.
{
"Google" : " https://www.google.com/search?q={0} " ,
"Yahoo Search" : " https://search.yahoo.com/search?q={0} "
}
Aunque lo anterior es simple y correcto, si eres programador no se recomienda utilizar el nombre para mostrar como clave. Al menos deberíamos, por ejemplo:
{
"yahoo" : {
"dname" : " Yahoo Search " ,
"full_url" : " https://search.yahoo.com/search?q={0} "
}
}
Al utilizar el formato completo, tiene la oportunidad de utilizar todas las funciones de esta herramienta.
Además, se admite la combinación de elementos con formato corto y formato completo.
{
"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 " ]
}
}
}
}
Esta parte también se explica en la descripción del vídeo.
En formato JSON.
Los datos del motor en formato completo pueden contener los siguientes valores-clave (se incluyen métodos de búsqueda especiales):
// # 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
},
....
}
},
}
Esta parte también se explica en la descripción del vídeo.
Algunos sitios web no proporcionan búsqueda GET/POST (o no responden resultados en HTML). Los visitantes deben abrir su página, luego ingresar y luego muestran los resultados a través de Ajax en su página. (ver preguntas frecuentes)
Big Search puede manejar dichos sitios web de renderizado Ajax en la página (inyectando js en su navegador web, para automatizar la entrada, los clics y el envío de formularios). Y fácil de configurar:
Ejemplo 1: especifique el selector CSS del cuadro de entrada. Automáticamente ingresará el término de búsqueda y activará presionar Enter evento.
"ajax" : " #search-box-input "
Ejemplo 2: Retraso 2 s -> Entrada -> Retraso 1 s -> Activar evento de botón de clic
"ajax" : [ 2000 , " #search-box-input " , 1000 , " #submit-button " ]
Esta parte también se explica en la descripción del vídeo.
Alentamos a los usuarios a enviar los datos de sus motores de búsqueda personalizados al código fuente después de formatearlos como JSON (enviarlos al archivo
enginesdata.js
).
Esta herramienta aún se puede mejorar para hacer algo más:
Rápido y liviano : SIN dependencias pesadas de marcos o bibliotecas. Aunque tiene temas de interfaz de usuario simplificados y sofisticados, todas las características principales y la interfaz de usuario son JS + CSS puro.
LZ-UTF8.js (38kB no minimizado. Biblioteca de compresión de datos, solo para sincronización de motores personalizados por el usuario)
Copyright (c) 2021, Rotem Dan
Released under the MIT license.
Foggy Lake (37kB webp. Foto de fondo predeterminada)
por Quang Nguyen Vinh
Ícono de Unicons (svg)
Unicons de Iconscout
Debido a que actualmente solo se admiten 2 idiomas, aún no se utiliza ningún marco, solo una función simple para implementar varios idiomas.
Para las cadenas que desea que sean multilingües (también está bien dejarlas solo en inglés), use la función JS i18n()
, cuyos parámetros de entrada pueden ser:
[0]
es chino, [1]
es inglés{zh: "This is Chinese, en: "This is English", fr: "This is French"}
Devolverá una cadena del idioma correspondiente.
Si desea agregar un motor de búsqueda que solo se dirija a usuarios en un idioma determinado, puede usar visible_lang
para hacerlo visible solo en un idioma determinado.
Una parte del código de esta herramienta se remonta aproximadamente a 2008. La aplicación web se publicó para que el público pudiera utilizarla en Internet en 2015. No fue hasta principios de la década de 2020 que encontré webExtension y JS estandarizados, por lo que convertí esta herramienta en una extensión del navegador y configure un repositorio de Github para ello. (Sí, se desarrolla lenta y suavemente, no a tiempo completo).
Parte del código ha sido alguna vez (y es posible que aún lo sea) refactorizado. Aunque todavía hay algunas piezas antiguas, esta herramienta siempre ha sido moderna, práctica y útil .
El código tiene licencia AGPL.
Registro de cambios