执行长时间运行的屏幕抓取脚本

时间:2012-01-12 10:03:33

标签: php curl screen-scraping shared-hosting

我在通过命令行运行的GoDaddy共享LAMP服务器上使用PHP屏幕抓取脚本。

脚本在数据库中搜索,解析和存储所需信息。每页整个过程大约需要1.5秒,并且需要抓取接近10,000页(并且对于每个页面,从其他两个页面获取cookie,使其总共为30k页curl

整个脚本大约需要5个小时才能运行。我做了一些内存分析,并且内存消耗在整个运行过程中或多或少保持不变 - 它不会增加。

如果我要在一夜之间运行脚本,GoDaddy会注意到它的异常吗? CPU消耗不应该太多,但是在5小时的持续时间内每1.5秒获取3页的带宽消耗会有多差?足以在GoDaddy结束时发出警报?

如果是,我想我可以将脚本分解为1500页,然后暂停一小时然后恢复。我应该这样做吗?

1 个答案:

答案 0 :(得分:0)

为了不回答问题,我会发布答案:

我一夜之间运行了剧本。它花了大约5个小时才能运行,它既没有被GoDaddy终止,也没有收到任何通知,所以我猜他们没问题。

最初我遇到了内存问题,其中脚本将耗尽分配给我的内存,但显然这是一个PHP 5.3之前的错误(有关here的详细信息)。一旦修复,它一直徘徊在32-34MB RAM使用率。没有关于CPU消耗或带宽使用的线索。