2013-01-07 30 views
13

Zastanawiam się co algorytm używa Google do paska adresu przeglądarki Chrome, aby działać jako pasek domyślnej wyszukiwarki dla wielu stronach internetowych, takich jak SO, Quroa itd., Ale nie dla Facebook, metastackoverflow itp ..Jakiego algorytmu używa Google, aby pasek adresu przeglądarki Chrome działał jako domyślny pasek wyszukiwania dla wielu witryn internetowych?

Na przykład, jeśli chcesz aby wyszukać temat w stackoverflow, możesz to zrobić w chorme.

enter image description here

a wyniki wyszukiwania będą bezpośrednio przeniesie Cię do strony stackoverflow. tj

enter image description here

To samo stanie się, jeśli zdecydujesz się szukać quora.com również w Chrome na pasku adresu. Ale tak się nie stanie, jeśli przeszukujesz się pod numerem facebook.com w pasku adresu i wielu innych witrynach z paskiem wyszukiwania.

Jak to się dzieje? Jakiego algorytmu używa Google, aby to się stało?

Mam nadzieję, że moje pytanie jest jasne? Każda pomoc będzie doceniona.

Odpowiedz

2

Chrome wykorzystuje mechanizm wyszukiwania. Opisano tutaj, jak z niego korzystać: http://support.google.com/chrome/bin/answer.py?hl=en&answer=95653&topic=14676&ctx=topic

Chrome automatycznie identyfikuje pola wyszukiwania i dodaje odpowiednie reguły do ​​listy wyszukiwarek. Może to silnik opiera się na analizie dokumentów. Hense danej witryny może zostać dodana lub nie z powodu jej znaczników w polu wyszukiwania. https://superuser.com/questions/276069/google-chrome-automatically-adding-websites-to-my-list-of-search-engines

Jeśli chcesz wiedzieć o algorytm parsowania, jedynym sposobem, widzę to kopać przez źródeł chromowane

Ponadto, można ręcznie edytować listy wyszukiwarek.

PS: A to nie tylko funkcja Chrome, inne przeglądarki mają podobne cechy. Opera jako przykład http://tech.gaeatimes.com/index.php/archive/how-to-easily-use-manage-your-search-engines-in-opera-browser/

18

Ta funkcja jest obsługiwana przez tak zwany OpenSearch. Pozwala określić sposób tworzenia zapytań podczas wyszukiwania w witrynie. Można zapoznać się z dokumentacją tutaj: http://www.opensearch.org/Home

Na przykład, StackOverflow ma następujące w kodzie źródłowym HTML:

<link rel="search" type="application/opensearchdescription+xml" title="Stack Overflow" href="/opensearch.xml"> 

Jeśli następnie otworzyć plik /opensearch.xml można zobaczyć:

<?xml version="1.0" encoding="UTF-8" ?> 
<OpenSearchDescription xmlns="http://a9.com/-/spec/opensearch/1.1/" xmlns:moz="http://www.mozilla.org/2006/browser/search/"> 
    <ShortName>Stack Overflow</ShortName> 
    <Description>Search Stack Overflow: Q&amp;A for professional and enthusiast programmers</Description> 
    <InputEncoding>UTF-8</InputEncoding> 
    <Image width="16" height="16" type="image/x-icon">http://sstatic.net/stackoverflow/img/favicon.ico</Image> 
    <Url type="text/html" method="get" template="http://stackoverflow.com/search?q={searchTerms}"></Url> 
</OpenSearchDescription> 

najważniejszą częścią jest linia, która określa ciąg wyszukiwanych haseł w linii 7.

+0

Dziękuję tyle :) –