Des idées sur le fonctionnement exact de la nouvelle recherche instantanée Google? Il semble que ce ne soit que des appels AJAX à l'ancienne recherche, mais il est assez difficile de simplifier autant Google. Quelqu'un a des spéculations?
EDIT: Je sais qu'il y a AJAX envoyé à chaque pression de touche, mais est-ce prédictif? Ou pensez-vous que ce n'est qu'une recherche google classique?
ajax
search
google-search
google-instant
DexterW
la source
la source
Réponses:
MISE À JOUR: Google vient de publier un article de blog intitulé Google Instant, dans les coulisses . C'est une lecture intéressante, et évidemment liée à cette question. Vous pouvez lire comment ils ont abordé la charge supplémentaire (5-7X selon l'article) côté serveur, par exemple. La réponse ci-dessous examine ce qui se passe du côté client:
En examinant avec Firebug , Google effectue une requête Ajax GET à chaque pression de touche:
Je suppose que cela fonctionne de la même manière que la complétion automatique. Cependant, cette fois, il renvoie également les résultats de la recherche de l'expression de recherche partiellement complète au format JSON .
Examen de l'une des réponses JSON en tapant "Stack Overflow":
Nous pouvons voir que la réponse JSON contient le contenu pour construire les résultats de la recherche au fur et à mesure que nous tapons.
Les réponses JSON formatées ressemblent à ceci:
Autres lectures non techniques:
la source
Comme d'autres l'ont dit, Google renvoie instantanément les résultats pour le meilleur résultat de ce que suggère Google . Par conséquent, si vous tapez fac , Google Suggests pense que vous tapez Facebook . Il est intéressant de noter que seul le terme de recherche partiel, fac , est envoyé à Google dans la requête JSON, de sorte que Google Suggestions est utilisé aux deux extrémités.
Les recherches ne sont pas réellement effectuées à chaque frappe. Si vous tapez assez vite, certains peuvent être manqués.
Je soupçonne que cela n'augmente pas la charge sur les serveurs de Google autant que vous pourriez le penser. La plupart des recherches supplémentaires concernent des mots très populaires lorsque vous commencez à taper des éléments - si vous commencez à rechercher quelque chose commençant par f , il recherchera facebook , si vous commencez à rechercher quelque chose commençant par ju , il recherchera justin bieber . Grâce à la mise en cache, ces recherches ne sont pas très coûteuses à faire.
la source
C'est prédictif. Les résultats de la recherche proviennent de la première suggestion de saisie semi-automatique (ou de celle sélectionnée si vous appuyez sur la flèche vers le bas ou passez la souris sur une suggestion).
En d'autres termes, si je tape «vinyle s», la première suggestion de saisie semi-automatique est «revêtement en vinyle» et les résultats de la recherche montrent clairement une recherche pour «revêtement en vinyle». Si je fais une recherche google normale pour "vinyles", les résultats de la recherche sont différents.
Donc, google instant est prédictif d'une manière que les recherches google normales ne le sont pas ... il recherche l'auto-complétion suggérée au lieu de la requête de recherche littérale inachevée.
la source
La conversion de la première valeur de la clé
u
dans la réponse Ajax de Daniel Vassallo donne une URL , qui conduit ensuite à un JSON (invalide). Je ne sais pas encore à quoi sert ce morceau.Le
d
donne du HTML, qui est inséré dans la page. Voici une version légèrement décompressée . Il s'agit principalement d'une balise de script, qui transmet 2 autres morceaux de HTML à une fonctionje.pa()
. Ces blocs semblent être les mêmes que les résultats de la recherche non instantanée.la source
Il y a quelque temps, j'ai écrit une interface graphique de recherche instantanée vaguement populaire pour le moteur de recherche Solr. C'est vraiment simple, vous devriez donc pouvoir regarder le code et comprendre les concepts généraux http://fergiemcdowall.github.io/solrstrap/
la source