获取百度指数中每个关键词的查询量,可能是很多做SEO或PPC的朋友们一直想做的事,但是百度指数并不是那么容易的被抓取,主要是他的查询并不是走的一般的HTTP协议,而是AMF协议,导致给数据抓取造成了一些麻烦。下面就一起来分析到底百度是如何进行查询数据的。
百度指数的趋势分析Flash(http://index.baidu.com/fla/TrendAnalyser.swf)采用了一种股市(stock)类的Flash报表作为原型,并在其基础上结合了自身的特色进行重新开发。
百度指数Flash的完整运行流程如下:
页面加载Flash。
Flash解析HTML中设定的flashvars参数,设定通信网关(http://index.baidu.com/gateway.php,返回数据的url地址)、显示数据时间段,生成图片的网页地址以及调用数据的key(没有注册key将不能获得数据)。
Flash根据参数向服务器(http://index.baidu.com/gateway.php)以POST方式发送请求,参数进行了加密处理。
Gateway返回加密过的数据。
Flash对数据解密,并进过内部运算后显示。
捕捉用户拖拽类型动作,重复3~5。
若用户鼠标悬停在某时间点上,则以GET方式(JSONP调用)。
返回的数据触发页面js脚本(不是直接给flash)的newsReturnCallback函数,参数为返回的json类型数据。数据经过处理后生成新的json数据,再通过js传递给Flash。
Flash解析传入的json数据,显示冒泡窗口,将url地址和标题数据显示出来。
捕捉用户鼠标悬停类型动作,重复7~9。
百度指数的查询请求参数:
如上图所示,百度指数是AMF协议进行通讯。
[0] 为要查询的关键词
[1] 是地区ID,用来限定查询的城市的
[2] 未知
[3] 参数3是时间,通过网页源文件里的eval(DEC())
[4] 5位随机数+md5(参数3+utf8(关键字)+ZZg<XWe7SZcBJ^aH)+5位随机数)
参数4的算法来自于网络,可能不准确,具体可以查看附件中的Flash源代码。大家可以自己分析,分析出来后记得把结果告诉我~
百度指数的查询返回数据:
userIndexes为每天的查询量
mediaIndexes为媒体关注度
版权声明:本站原创文章,由深圳SEO小星星发表,如有转载请注明来源处。深圳SEO小星星博客www.xinxing327.com
百度搜索结果中显示站点LOGO技巧视频教程
又一部“像素大战”来袭,索尼对Emoji电影不死心 - emoji,表情,索尼电影
微信群内辱骂他人,被判侵犯名誉权赔偿千元 - 微信,朋友圈
AlphaGo们的邪恶用途:日本象棋选手被控请AI作弊 - alphago,人工智能,AI
马云又给你钱用,蚂蚁花呗双11最高可提额5.5万元
seo如何分析数据
38岁全球最年长圈养大熊猫在香港安乐死离世 - 大熊猫
SEO技巧:谈谈通过刷百度指数提升网站权重的技巧,百度指数怎么刷
深度解析百度蜘蛛3.0发布后SEO的操作技巧
SEO方案:实战分析企业网站优化建议书
SEO的春天了吗?与新媒体结合
SEO教程:最新网站TDK的写法技巧
网站底部你不可忽略的seo优化死角
SEO优化时妙不可言的图片属性
浅谈网站怎么实现百度秒收录
网站图片SEO优化的细节包括哪些?
深圳SEO:老域名正反面优化排名分析
SEO:站内站外形成链轮的深度分析
深圳SEO:上海森亿百度负面相关处理
深圳SEO:小星星SEO介绍
SEO优化:今天阐述一下老域名做排名的优势
深圳seo今天来阐述一下镜像网站对排名的影响
深圳SEO:做到以下5点网站不更新内容不发外链排名还是会稳定
深圳SEO:快速排名到底是真是假 ,今天小编就来发表一下自己观点