scraperwiki如何限制执行时间?

时间:2011-05-20 07:30:50

标签: scraperwiki

scraperwiki如何决定停止计划的运行?它是基于实际执行时间还是CPU时间?或者别的什么。

我刮掉一个机械部门需要30秒来加载每一页的网站,但是我用很少的CPU来处理这些页面,所以我想知道服务器的缓慢是否是一个主要问题。

1 个答案:

答案 0 :(得分:2)

CPU时间,而不是挂钟时间。它基于Linux函数setrlimit。

每个刮刀运行的处理时间限制大约为80秒。之后,在Python和Ruby中,您将获得“超出ScraperWiki CPU时间”的异常。在PHP中它将结束“由SIGXCPU终止”。

在许多情况下,当您第一次抓取网站时,会发生这种情况,赶上积压的现有数据。处理它的最好方法是使用save_var和get_var函数(见http://scraperwiki.com/docs/python/python_help_documentation/)让你的scraper一次做一个块来记住你的位置。

这也可以让您更轻松地从其他解析错误中恢复。