Как Google отслеживает клики по результатам поиска? Это лучший способ? - PullRequest
2 голосов
/ 11 марта 2009

Как говорится в вопросе, я пытаюсь выяснить, как Google отслеживает клики в результатах поиска. При просмотре источника вы обнаружите следующее:

 <a href="http://www.yahoo.com/" class=l onmousedown="return rwt(this,'','','res','1','AFQjCNG7Ba-stir4109vlLygPQX7QGf8bg','&amp;sig2=Vx5PLxf04C-yJYZTZfvk8w')"><em>Yahoo</em>!</a>

Функция rwt довольно грязная:

windows.rwt=function(b,d,e,g,h,f,i,j){
var a=encodeURIComponent||escape,c=b.href.split("#");
b.href=["/url?sa=t\x26source\x3dweb",d?"&oi="+a(d):"",e?"&cad="+a(e):"","&ct=",a(g),"&cd=",a(h),"&url=",a(c[0]).replace(/\+/g,"%2B"),"&ei=7_C2SbqXBMW0-AbU4OWnCw",f?"&usg="+f:"",i,c[1]?"#"+c[1]:""].join("");
b.onmousedown="";
return true};

Похоже, что Google меняет href тега на /url?..., что, как я предполагаю, и есть их отслеживание. Похоже, что из LiveHeaders в Firefox эта страница перенаправляет браузер на исходную ссылку тега.

Правильно ли это и является ли это лучшим методом отслеживания кликов по ссылкам на вашем сайте, например по объявлениям?

Ответы [ 2 ]

9 голосов
/ 11 марта 2009

Это на самом деле изменение ссылки, а не расположения окна. Это настройка b.href, а b относится к самой ссылке. Это происходит в обычном режиме, поэтому, когда вы отпускаете мышь и обрабатываете щелчок, вы волшебным образом отправляетесь на эту новую ссылку.

Любое отслеживание кликов в значительной степени сводится к отправке пользователя к какому-либо эквиваленту скрипта Google / url? ..., подсчету клика и выполнению перенаправления 302 к реальному месту назначения.

Преимущество замены javascript href заключается в автоматической фильтрации любых роботов, которые не запускают сценарии. Недостатком является то, что он также отфильтровывает любых реальных людей, у которых отключен JavaScript. Если, как и в Google, вам просто важно, какая ссылка наиболее популярна у ваших реальных пользователей, это работает довольно хорошо. Клики, которые вы записываете, должны отражать реальный человеческий трафик, и вы можете спокойно игнорировать клики от пользователей, не поддерживающих JavaScript, поскольку в любом случае они, вероятно, имеют одинаковые предпочтения.

Большинство объявлений просто ссылаются прямо на счетчик URL без замены JavaScript. Это означает, что вы определенно подсчитываете каждый реальный клик по ссылке, но вам нужно беспокоиться о фильтрации запросов от роботов, поскольку теперь они также увидят ваш подсчитывающий URL.

То, что вы предпочитаете, зависит от того, почему вы хотите отслеживать клики.

1 голос
/ 11 марта 2009

Я думаю, что большинство людей ожидают, что объявления будут проходить через какую-то систему отслеживания, поэтому я не должен слишком беспокоиться о том, чтобы следовать этой конкретной реализации javascript, - как и обо всем, что, вероятно, существует, чтобы гарантировать, что пользователь увидит правильную ссылку в строке состояния браузера, что различные другие интересные фрагменты информации (условия поиска, позиция в наборе результатов в данный момент, кто вы и т. д.) передаются (без вашего ведома) и что ссылки по-прежнему работают, если JavaScript инвалиды.

Как правило, да, руководство пользователя через некоторую страницу отслеживания с идентификатором объявления, на которое он нажал, и, возможно, имеет смысл дать дополнительное указание на то, откуда оно пришло - таким образом, вы не полагаетесь на другие механизмы (например, как обработчики событий JS) для отслеживания кликов по ссылкам, это, безусловно, работает большинство рекламных систем, которые я использовал.

...