Come scatole di ricerca browser funzionano? [chiuso]
-
21-08-2019 - |
Domanda
Ho bisogno di sapere con precisione come le caselle di ricerca sui browser funzionano. Vorrei sostituire le cose di ricerca, come Wikipedia e Google, con i motori di ricerca personalizzati qui a Matematica. Potete vederli in iGoogle. Quindi:
Come posso aggiungere Google CSE al browser caselle di ricerca?
Soluzione
È possibile creare i cosiddetti "fornitori di ricerca" per i vostri siti. Si dovrebbe avere una pagina di ricerca sul tuo sito che accetta le parole chiave di ricerca come stringa di query nel tuo URL, come
http://www.example.com/search?q=meaning+of+life
Questo dovrebbe funzionare lavoro Google Custom Search pure.
Si dovrà creare un file XML speciale (lo chiamano SearchProvider.xml
, per esempio) e metterlo sul vostro server web:
<?xml version="1.0" encoding="UTF-8"?>
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/">
<ShortName>Example Search Provider</ShortName>
<Description>Finds answers to the most important question of the universe</Description>
<InputEncoding>UTF-8</InputEncoding>
<Url type="text/html" template=" http://www.example.com/search?q={searchTerms}"/>
</OpenSearchDescription>
Quindi, è necessario inserire un tag apposito link nella sezione di intestazione della tua pagina:
<link title="Example Search Provider" rel="search"
type="application/opensearchdescription+xml"
href="http://www.example.com/SearchProvider.xml" />
Si potrebbe anche inserire un link alla tua pagina, che consente agli utenti di aggiungere il provider di ricerca al browser:
<a href="#"
onclick="javascript:window.external.AddSearchProvider('http://www.example.com/SearchProvider.xml');">
Example Search Provider</a>
Altri suggerimenti
caselle di ricerca del browser sono implementati in una tecnologia chiamata OpenSearch. Vedi: (? Sito attualmente in giù) http://www.opensearch.org/
Mozilla ha una buona pagina che spiega come implementare questo per loro browser: https: // developer. mozilla.org/en/Creating_OpenSearch_plugins_for_Firefox Mentre ci sono alcuni dettagli su Mozilla specifici là, la pagina può servire come un buon punto di partenza per l'implementazione cross-browser.
Aggiungi completamento automatico alla casella di ricerca è un po 'più complicato. Prima aggiungere l'URL della query completamento automatico come descritto da Mozilla. Quindi è necessario mettere una risposta sul server, che è conforme a ciò che i vari browser si aspettano.
Date un'occhiata a quello che Google ritorna per i vari browser che supportano:
* Firefox: http://suggestqueries.google.com/complete/search?client=firefox&hl=en-US&q=xmarks
o Content-Type: text/javascript
o Response body: ["xmarks",["xmarksthaspot","xmarksthescot","foxmarks safari","xmark.com","gmarks firefox","x marks foxmarks","xmarksthespot","xmarks ie","foxmarks addon","foxmarks for ie"]]
* Safari: http://suggestqueries.google.com/complete/search?client=safari&hl=en-US&q=xmarks
o Content-Type: application/json
o Response body: ["xmarks",[["xmarksthaspot","18,400 results","0"],["xmarksthescot","196,000 results","1"],["foxmarks safari","148,000 results","2s"],["xmark.com","336,000 results","3s"],["gmarks firefox","50,700 results","4s"],["x marks foxmarks","13,500 results","5s"],["xmarksthespot","20,500 results","6"],["xmarks ie","96,400 results","7"],["foxmarks addon","210,000 results","8s"],["foxmarks for ie","191,000 results","9s"]]]
* Others: http://suggestqueries.google.com/complete/search?client=ie&hl=en-US&q=xmarks
o Content-Type: text/javascript
o Response body: I'm not sure it's relevant. It's essentially the exact same format as Safari above, but it's wrapped by a JavaScript call to window.google.ac.h(). I'm not 100% certain, but that looks like the callback to their HTML-page version of auto-completion and suggests to me that they don't really support opensearch auto-completion in anything but Firefox and Safari.
Probabilmente dipende dal browser al browser, ma con Firefox, è semplice da personalizzare:. Ricerca Bar e Come aggiungere facilmente un motore di ricerca personalizzato per il tuo Firefox barra di ricerca
Microsoft fornisce uno strumento per aggiungere provider di ricerca personalizzati per IE, e il componente aggiuntivo di ricerca estensione Bar permette di fare lo stesso con Firefox.