如何让搜索爬虫正确地索引具有无限滚动的页面?

sbi*_*nko 13 web-crawler infinite-scroll

我有一个网站,我实现无限滚动:当用户到达页面的末尾时,进行AJAX调用并将新内容附加到页面底部.但是,这意味着搜索爬虫无法获得第一个"分页符"之后的所有内容.例如,我有一个页面列出了所有带有"infographic"标签的项目.实际上有几十个这样的项目,但是爬虫只能看到前10个,因为其他项目是根据内容相对于浏览器窗口的位置加载的.由于抓取工具没有浏览器窗口,因此根本不会加载新项目.

那么,让搜索爬虫访问具有无限滚动的网页的完整内容,同时还允许用户享受无限滚动和缺乏分页的正确方法是什么?

Vic*_*ciu 19

优雅降级的过程中,你不应该依赖JavaScript来实现与分页一样重要的东西.我可能首先实现一个普通的分页系统(搜索引擎可以索引),然后使用JS来隐藏分页链接并实现无限滚动解决方案.

  • 绝对是处理这个问题的正确方法.接受的答案只会使服务器瘫痪,更不用说是DDoS攻击的简单选择. (2认同)

Ant*_*los 4

创建“查看全部”页面

创建另一个页面,其中列出了所有内容,并链接到具有无限滚动的页面上通常包含的项目。然后放置一个名为 的无限滚动页面的小链接(可能在最底部)all whatever。换句话说,如果您的页面列出了产​​品,则链接应显示Show All Products或类似内容。如果该页面是博客文章,那么链接应该类似于All Articles。是的,人类可能不喜欢长负载,但对于谷歌来说,它很大并不重要。它将下载它并正常访问其中的链接。

此外,如果您的分页正在迭代数以万计的项目,那么您可以将“查看所有页面”分解为类似于博客存档或产品目录工作方式的部分。重点是,您为没有 JavaScript 的人们和那些真正想要查看所有内容的人们提供了一种替代方法,同时也为 Google 甚至其他搜索引擎抓取您的页面库存提供了一种替代方法。

最后,作为辅助措施,添加一个/sitemap.xml文件,其中包含每篇文章/产品/库存或其他内容的索引。请参阅http://www.sitemaps.org/

您可以观看名为“分页和 SEO”的官方 Google 网站管理员视频,其中介绍了查看所有概念、分页、规范 url 以及 Google 的 rel=next 和 rel=prev 属性。

http://www.youtube.com/watch?v=njn8uXTWiGg