搜索引擎是否有任何构建模块可以刮掉其他网站?

时间:2009-06-18 17:42:22

标签: search search-engine web-crawler

我想为一件特别的事情建立一个搜索服务。这些数据可通过免费的分类服务和许多其他网站免费获得。

是否有任何积木,例如我会定制的开源爬虫 - 而不是从头开始构建,我可以使用吗?

有关构建此类产品的建议吗?不仅仅是技术方面,还有我可能需要考虑的任何隐私/法律事务。

E.g。我是否需要“给予信任”结果来自并提供原始链接 - 如果我从很多地方获得它们?

编辑:顺便说一句,我使用GWT和JS作为前端,还没有决定使用后端的语言。 PHP或Python。想法?

2 个答案:

答案 0 :(得分:2)

你可以使用python中的几个块。

  1. beautifulsoup [http://www.crummy.com/software/BeautifulSoup/]用于解析HTML。它也可以处理错误的代码,而且它的API很容易......比任何类似DOM的工具都要好。我的朋友用它来成功地刮掉他的旧phpbb论坛。它有很好的文档。
  2. mechanize [http://wwwsearch.sourceforge.net/mechanize/]是一个模拟web浏览器的http客户端库。它处理cookie,填写表格等。同样易于使用,但如果您了解http的工作原理,它会有所帮助。
  3. http://dev.scrapy.org/ - 这是一个相对较新的东西:一个基于扭曲的整个抓取框架。我没玩过多少。
  4. 我根据自己的需要使用前两个; F.E.它需要20行代码才能获得一个用于3阶段轮询的自动测试工具,模拟等待用户输入数据等等。

答案 1 :(得分:0)

我在Ruby中制作了一个屏幕刮刀,花了五分钟。显然this dude让它降到60秒!我不确定Ruby是否可以像你想要的那样具有可扩展性或快速性,但我从未见过更快的概念验证或原型。

这个秘密就是一个名为“hpricot”的图书馆,它就是为了这个目的而建立的。

我对PHP或Python一无所知,或者对这些开发系统/语言有什么用。

祝你好运!