2010-10-25 124 views
0

我试图通过解析/通过PHP抓取网站的信息来获取信息& Curl。但是有时候当前页面没有完成加载,所以脚本运行时没有任何事情发生。它是这样一个简单的脚本...加载有时通过PHP“挂起”的页面(卷曲)

... 

curl_setopt($curl, CURLOPT_URL, $url); 

$page = curl_exec($curl); 

... 

有没有办法简单地重试同一页面的加载,如果(例如)在60秒钟后页面没有加载完成,无需中断完整的脚本?

如果有人能够帮助我实现这项任务,那将会很棒。

回答

2

您可以使用CURLOPT_TIMEOUT这是允许cURL函数执行的最大秒数。

curl_setopt($ch, CURLOPT_TIMEOUT, timeout_in_seconds); 
+0

感谢信息。你有什么想法如何知道是否有超时并重复该过程? – 2010-10-25 00:35:46

+1

我想你可以遍历你的'curl_exec'直到返回值为真。 *虽然未经测试* – 2010-10-25 01:10:18

0

简单的东西会..

$bol=true; 
while($bol) 
{ 
$page = curl_exec($curl); 
if($page=="")//Or whatever curl_exec returns on timeout 
$bol=true; 
}