4

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

4

4 回答 4

4

首先要查找的是该站点是否已经提供了某种结构化数据,或者您是否需要自己解析 HTML。好像有最新歌曲的 RSS 提要。如果那是您正在寻找的东西,那么从那里开始会很好。

您可以使用脚本语言下载提要并对其进行解析。我使用 python,但如果你愿意,你可以选择不同的脚本语言。这是一些关于如何在 python 中下载 url 并在 python 中解析XML 的文档

当您编写下载站点或 RSS 提要的程序时,需要注意的另一件事是您的抓取脚本运行的频率。如果你让它不断运行,以便在新数据可用的那一秒就获得新数据,你会给网站带来很多负载,他们很有可能会阻止你。尽量不要比您需要的更频繁地运行您的脚本。

于 2010-07-31T23:59:42.123 回答
1

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

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

“C# 机器人的 HTTP 编程食谱” http://www.amazon.com/HTTP-Programming-Recipes-C-Bots/dp/0977320677

“Java 机器人的 HTTP 编程食谱” http://www.amazon.com/HTTP-Programming-Recipes-Java-Bots/dp/0977320669

于 2010-08-01T00:04:47.210 回答
0

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

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

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

于 2010-08-01T00:26:00.713 回答
0

Python has the feedparser module, located at feedparser.org that actually handles RSS in its various flavours and ATOM in its various flavours. No reason to reinvent the wheel.

于 2012-10-11T00:29:02.053 回答