3

我遇到了这个 .NET 库:

http://www.webzinc.com/online/faq.aspx

但是,我想知道那里是否有免费的替代品?

4

1 回答 1

3

建造机器人并不难,并且有许多书描述了这样做的一般算法(简单的谷歌搜索会出现许多算法)。

从 .NET 的角度来看,它的要点是递归地:

  • 下载页面 - 这是通过HttpWebRequest/HttpWebResponseWebClient类完成的。此外,您可以使用来自 CodePlex 的新 WCF Web API,这是对上述内容的巨大改进,专门用于生成/使用 REST 内容,它非常适合用于爬取目的(主要是因为它的可扩展性)

  • 解析下载的内容 - 我强烈推荐Html Agility Pack以及 Html Agility Pack 的fizzler扩展。Html Agility Pack 将处理格式错误的 HTML,并允许您使用 XPath(或其子集)查询 HTML 元素。此外,如果您熟悉在 jQuery中使用CSS 选择器,fizzler 将允许您使用它们。

  • 获得结构化格式的 HTML 后,扫描结构以查找与您相关的内容并进行处理。

    • 扫描外部链接的结构化格式并放入要处理的队列中(根据您想要的应用程序的任何限制,您不会索引整个网络,是吗?)。

    • 获取队列中的下一个项目,然后再次重复该过程。

于 2009-12-23T21:10:59.720 回答