任何人都有任何C#代码来解析robots.txt并对其进行评估

时间:2009-03-11 05:47:24

标签: c# robots.txt

简短的问题:

是否有人有任何C#代码来解析robots.txt然后针对它评估URLS,所以看看它们是否会被排除。

很长的问题:

我一直在为尚未发布到谷歌的新网站创建站点地图。站点地图有两种模式,一种是用户模式(如传统的站点地图)和一种“管理”模式。

管理员模式将在网站上显示所有可能的网址,包括针对特定外部合作伙伴的自定义条目网址或网址,例如example.com/oprah适用于在奥普拉看到我们网站的任何人。我想跟踪Excel电子表格以外的其他地方发布的链接。

我不得不假设有人可能会在他们的博客或某个地方发布/oprah链接。我们实际上并不希望将这个“迷你oprah网站”编入索引,因为这会导致非oprah观众能够找到特殊的奥普拉优惠。

因此,在创建站点地图的同时,我还添加了/oprah等网址,以便从robots.txt文件中排除。

然后(这是实际的问题)我认为“能够在站点地图上显示文件是否被索引并且对机器人可见”不是很好。这很简单 - 只需解析robots.txt然后评估一个链接。

然而,这是一个“奖励功能”,我当然没有时间去写它(甚至认为它可能不那么复杂) - 所以我想知道是否有人已经编写任何代码来解析机器人。 txt?

3 个答案:

答案 0 :(得分:8)

讨厌说,但只是谷歌“C#robots.txt解析器”并点击第一个点击。它是CodeProject article about a simple search engine implemented in C# called "Searcharoo",它包含一个类Searcharoo.Indexer.RobotsTxt,描述为:

  
      
  1. 检查并(如果有)下载并解析网站上的robots.txt文件
  2.   
  3. 为Spider提供一个界面,以根据robots.txt规则检查每个Url
  4.   

答案 1 :(得分:3)

我喜欢http://code.google.com/p/robotstxt/中的代码和测试会推荐它作为起点。

答案 2 :(得分:1)

有点自我推销,但由于我需要一个类似的解析器,找不到任何我满意的东西,我创建了自己的:

http://nrobots.codeplex.com/

我喜欢任何反馈