09-02
19
搜索引擎统计搜索结果点击情况的几个参数
作者:Java伴侣 日期:2009-02-19
以前曾经很单纯的以为搜索引擎在你做了一次搜索后,所做的事情只是记录你的搜索行为,并把结果列出来,至于你点击第几个结果,他们是不统计的.
但是在查看了搜索结果页的源码以后,这个单纯的念头消散了.显然每个结果的超链接上都加了点额外的动作.百度如此,google也如此
那么他们会提取哪些参数呢?截包看一下
在百度搜索hello world,然后点击排名第二的网站,是IBM.同时截取数据包,观察发出的第一个数据包,忽略user-agent,host,referer, cookies等部分(cookies中也许会有些有用的参数,但因为是加密的代码,恐怕研究不出什么东西)
得到以下这段数据:
复制内容到剪贴板 程序代码
/w.gif?query=hello+world&e=6b24&title=IBM%20developerWorks%20….%20:%20Hello%20World%20……..:%20…………%20..&url=http%3A//www.ibm.com/developerworks/cn/offers/lp/helloworld/&spos=2&path=http://www.baidu.com/s?wd=hello+world&t=1211653135732
这个是浏览器发出的请求,其中有几段参数,应该说比较直白,我们来稍微分析一下它们的含义:
引用内容
query=hello+world
所搜索的关键词
引用内容
e=6b24
Ring认为这个参数应该是用来标记一个session对话中特定的一次搜索中的特定一个结果的.在同一个session中做多次针对同个关键词的搜索, 这个数会变化,关闭浏览器重新开一个session再搜索就更会变化.但如果搜索以后,结果页放在那不动,你点它多少次都是6b24,通过这个参数百度应 该就能知道你点击了哪个结果,并过滤掉不必要的重复点击.
引用内容
title=IBM%20developerWorks%20….%20:%20Hello%20World%20……..:%20…………%20..
该网站的title.由于截包工具不支持中文,把中文用…代替了
引用内容
url=http%3A//www.ibm.com/developerworks/cn/offers/lp/helloworld/&spos=2
该结果的目标URL
引用内容
path=http://www.baidu.com/s?wd=hello+world
搜索结果页的路径
引用内容
t=1211653135732
当前时间,以毫秒为单位.
其中有几个参数本应是可以不用通过这种传值方式感知的.比如,百度作为搜索结果的提供人,从e值知道你点了哪个结果以后,应该理所当然的可以通过自己的数据库得知这个结果的网站title和URL,却要用这种方法来传值,可能是有什么其他方面的考虑吧.
而google.cn的截包数据却十分简练.
复制内容到剪贴板 程序代码
GET /url?sa=T&ct=res&cd=3&ei=KFs4SOqMHIKS6gP54vnTDQ
显然google没有想给我们看到更多的东西.参数的名称和值都用了暗语.Ring仅能通过增加几次截包猜测出cd这个值表示的是用户点击了第几个结果.但是以google的风格,他们应该是不会放过任何能够统计的数据的.
转自 :http://www.geekpoint.cn/2008/05/25/clicking-para/
评论: 0 | 引用: 0 | 查看次数: 339
发表评论