0

我正在编写一个可能需要半天时间的脚本,因为它从一个网站的大约 14000 个网页中获取数据。

要确定它是否取得进展,有没有办法观察它的执行情况,即使用 mac os shell 到每个抓取页面的传出连接?

如果有任何帮助,我正在使用 curl 获取页面内容。

非常感谢!查尔斯

编辑该脚本是用 php 编写的,并从 localhost 执行。

4

2 回答 2

0

在编写自定义脚本时,将某种状态输出到标准输出非常有帮助。

这可以使用printf http://www.php.net/manual/en/function.sprintf.php以统一的方式完成

您记录到标准输出的内容取决于您需要查看的信息。也许对于 curl 请求,我会记录 Url、响应代码,也许是开始时间和结束时间。这完全取决于您,只需确保您可以验证它的状态/进度。

printf('%40s | %5s', 'URL', 'Status Code');
printf('%40s | %5s', $the_url, $status_code);
于 2012-06-10T12:36:28.010 回答
0

如果您通过 Web 浏览器运行它,则在 PHP 完成执行之前不会看到输出。但是,file_put_contents()可以将数据附加到您可以查看的日志文件中。

示例代码行是:file_put_contents("file name.txt", "\nWebsite abc was successfully scraped", FILE_APPEND);. 您必须具有 FILE_APPEND 标志,否则 PHP 每次都会覆盖该文件。

php.net 参考

于 2012-06-10T12:42:42.270 回答