从网站抓取多个网页

时间:2012-04-15 07:23:03

标签: web-crawler dmoz

我想从网站上提取数据。比如说,网址是http://www.example.com/。所以我将此网址放在start_urls中(参考文档中的DMOZ示例)。但是我还想在输入字符串时创建一个GUI,然后单击一个按钮,它会将该字符串附加到start_urls并提取所有可以访问的页面,如http://www.example.com/computer/page-1。那么请你告诉我如何使用循环来做到这一点?我已尝试手动在start_urls中添加更多网址,以检查其是否有效,但效果不佳。有时它没有得到回应。有什么想法?

2 个答案:

答案 0 :(得分:0)

如何使用循环执行此操作?

朋友,那将是一个循环。说真的,我会考虑查看现有的开源脚本和执行此操作的应用程序。您可以轻松地查看并了解如何完成。然后,当然,您可以随心所欲地制作任何您想要的更好的。我很确定有很多网络爬行解决方案的例子。使用我有限的工具集,我可能会尝试通过某种bash或perl脚本来控制wget的某些内容,但这对我而言并不一定对很多人有利。

至于“任务”本身,如果你真的想自己编写代码,可以考虑拆分子任务,  有些人会看到2个应用程序在执行此任务例如,您可以让一个应用程序存储链接,另一个应用程序可以存储“抓取器”,即蜘蛛。

尽量不要考虑'循环'。在项目的这个阶段还没有循环。

如果您使用的是Linux或者为Windows安装了Cygwin / GnuTools,就像我暗示我强烈怀疑wget可能会编写脚本来执行此操作,请查看文本链接列表并获取css,图像甚至js。< / p>

当然,一旦所有这些从命令行运行良好,那么你可能希望前端以友好的方式访问它。同样取决于您使用的语言/技术堆栈,您将有不同的选择。这是我不会涉及的另一个话题。

希望这有帮助,欢呼!

简而言之,您可以在Sourceforge,git-hub,google等上搜索现有的开源Web抓取资源。

答案 1 :(得分:0)

根据您的需求,Netwoof可以为您完成。可以在链接,多个resutls页面等上循环...它是完全自动化的,生成API,甚至可以对结构化数据中的未构造数据进行限定。

相关问题