6

如果我有一个包含大量线程的论坛站点,搜索引擎机器人是否会每次都抓取整个站点?假设我的站点中有超过 1,000,000 个线程,每次机器人抓取我的站点时它们都会被抓取吗?或者它是如何工作的?我希望我的网站被索引,但我不希望机器人杀死我的网站!换句话说,我不希望机器人每次抓取我的网站时都一遍又一遍地抓取旧线程。

另外,之前爬过的页面呢?机器人每次爬取我的网站时都会请求它们以确保它们仍在网站上吗?我问这个是因为我只链接到最新线程,即有一个页面包含所有最新线程的列表,但我没有链接到旧线程,它们必须通过 URL 明确请求,例如 http ://example.com/showthread.aspx?threadid=7,这是否可以阻止机器人使我的网站停机并消耗我所有的带宽?

PS 该网站仍在开发中,但我想知道以设计该网站,以免搜索引擎机器人将其关闭。

4

3 回答 3

8

复杂的东西。

根据我的经验,这更多地取决于您使用什么 URL 方案将页面链接在一起,这将决定爬虫是否会爬取哪些页面。

  • 大多数引擎爬取整个网站,如果它都与爬取友好的 URL正确超链接,例如使用 URL 重写而不是 topicID=123 查询字符串,并且所有页面都可以轻松链接到主页上的几次点击。

  • 另一种情况是分页,如果您有分页,有时机器人只抓取第一页并在找到下一页链接时停止,不断点击同一文档,例如整个网站的一个 index.php。

  • 您不希望机器人意外点击某些执行某些操作的网页,例如链接到“delete.php?topicID=123”的“删除主题”链接,因此大多数爬虫也会检查这些情况。

  • SEOmoz的“工具”页面还提供了很多关于一些爬虫工作方式的信息和见解,以及它将提取和咀嚼的信息等。您可以使用这些来确定您的论坛深处的页面,例如一年前的帖子可能会得到爬行与否。

  • 还有一些爬虫可以让你自定义他们的爬取行为……比如谷歌站点地图。你可以告诉他们抓取和不抓取哪些页面和订单等。我记得 MSN 和雅虎也提供此类服务,但我自己从未尝试过。

  • 您可以通过在网站根目录中提供robots.txt文件来限制抓取机器人,使其不会淹没您的网站。

基本上,如果您设计您的论坛,使 URL 看起来不会对爬虫有敌意,它会愉快地爬取整个网站。

于 2008-11-07T08:21:05.577 回答
0

抓取机器人不会一次抓取您的整个网站,而是每次访问时抓取一些页面。每个站点的爬取频率和每次爬取的页面数量差异很大。

谷歌索引的每个页面都会不时地再次抓取,以确保没有任何变化。

使用站点地图绝对有助于确保搜索引擎索引尽可能多的页面。

于 2008-11-21T08:40:11.143 回答
0

为了建立在 chakrit 所说的基础上,一些搜索引擎(尤其是谷歌)只会索引只有一个或两个参数的页面。之后,该页面通常会被忽略,可能是因为它被视为过于动态,因此是不可靠的 URL。

最好创建没有参数的 SEO 友好 URL,而是将实现隐藏在 Apache中的mod_rewrite或Rails中的路由之类的东西后面。(例如http://domain.com/forum/post/123映射到http://domain.com/forum/post.php?id=123)。

Chakrit 还提到了Google 站点地图。这些对于确保 Google 扫描每个帖子并将其永久保存在索引中很有用。Jeff Atwood 在Stackoverflow 播客 24上对此进行了讨论,他在其中解释说,在将每个 Stackoverflow 帖子放入站点地图之前,Google 不会保留所有的 Stackoverflow 帖子。

于 2008-11-10T19:29:28.973 回答