如何抓取Hype Machine等网站?

时间:2010-07-31 23:56:26

标签: web-scraping screen-scraping

我很好奇网站抓取(即它是如何完成等等),特别是我想编写一个脚本来执行网站Hype Machine的任务。 我实际上是一名软件工程本科生(第四年)但是我们并没有真正涵盖任何网络编程,所以我对Javascript / RESTFul API /所有Web的理解非常有限,因为我们主要关注理论和客户端应用程序。 非常感谢任何帮助或指示。

4 个答案:

答案 0 :(得分:4)

首先要考虑的是网站是否已经提供某种结构化数据,或者您是否需要自己解析HTML。看起来有一个RSS feed of latest songs。如果这就是你要找的东西,那么从那里开始会很好。

您可以使用脚本语言下载Feed并对其进行解析。我使用python,但如果你愿意,你可以选择一种不同的脚本语言。以下是一些关于如何download a url in pythonparse XML in python的文档。

当您编写下载网站或RSS源的程序时,需要注意的另一件事是您的抓取脚本运行的频率。如果你经常运行它以便你可以获得新数据,那么你将会在网站上加载很多,并且它们很可能会阻止你。尽量不要经常运行脚本。

答案 1 :(得分:1)

您可能需要查看以下书籍:

“Webbots,Spiders和Screen Scrapers:使用PHP / CURL开发Internet代理的指南” http://www.amazon.com/Webbots-Spiders-Screen-Scrapers-Developing/dp/1593271204

“C#Bots的HTTP编程配方” http://www.amazon.com/HTTP-Programming-Recipes-C-Bots/dp/0977320677

“Java Bots的HTTP编程配方” http://www.amazon.com/HTTP-Programming-Recipes-Java-Bots/dp/0977320669

答案 2 :(得分:0)

我认为您必须分析的最重要的事情是您要提取哪种信息。如果你想提取谷歌这样的整个网站可能你最好的选择是从Apache.org或flaptor解决方案中分析nutch等工具http://ww.hounder.org如果你需要提取非结构化数据文档的特定区域 - 网站,文档,pdf - 可能你可以扩展nutch插件以满足特定需求。 nutch.apache.org

另一方面,如果您需要提取网站的特定文本或剪辑区域,您可以使用页面的DOM设置规则,那么您需要检查的内容与mozenda.com等工具更相关。使用这些工具,您可以设置提取规则,以便废弃网站上的特定信息。您必须考虑到网页上的任何更改都会给您的机器人带来错误。

最后,如果您计划使用信息来源开发网站,您可以从spinn3r.com等公司购买信息,因为它们会出售准备好消费的特定信息。您将能够在基础设施上节省大量资金。 希望能帮助到你!。 塞巴斯蒂安。

答案 3 :(得分:0)

Python有feedparser模块,位于feedparser.org,它实际上处理各种风格的RSS和各种风格的ATOM。没有理由重新发明轮子。

相关问题