网络爬虫如何抓取web2.0 Ajax页面

伴随着AJAX/Web2.0的流行,如何抓取Ajax页面成了搜索引擎急需解决的一个问题,因为Ajax颠覆了传统的纯HTTP请求/响应协议机制,如果搜索引擎依旧采用“爬”的机制,是无法抓取到AJAX页面的有效数据的。 AJAX,也就是Asychronous Javascript and XML,由于采用了Javascript驱动的异步请求/响应机制,以往的爬虫们缺乏Javascript语义上的理解,基本上是无法模拟触发Javascript的异步调用并解析返回的异步回调逻辑和内容。 另外AJAX的应用中,Javascript会对DOM结构进行大量地变动,甚至页面所有的内容都是通过Javascript直接从服务器端读取并动态绘制出来.这个对于”习惯了”DOM结构相对不变的静态页面,简直是无法理解的. 由此可以看出,以往的爬虫是基于协议驱动的,而对于AJAX这样的技术,所需要的“爬虫”引擎必须是基于事件驱动的。要实现事件驱动,首先需要解决下面几点问题 ●Javascript的交互分析和解释 ●DOM事件的处理和解释分发 ●动态DOM内容语义的抽取 至于具体如何去实现,个人觉得Crawling Ajax-driven Web 2.0 Applications这篇论文很有参考价值。有兴趣地可以研究研究。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章