PHP没有使用SimpleHTMLDOM完成URL的循环

时间:2014-12-20 20:54:54

标签: php simple-html-dom

我正在尝试使用SimpleHTMLDom从网络中删除数据,而我在处理对大量网页的请求时遇到了困难。

我尝试使用此方法的次数较少,并取得了巨大成功,但对于我正在进行的项目,我需要多次向网络发出请求。事实上几百个。

我已经成功地向网络发出了22次请求,但我还没有完成循环。

这可能是PHP中的限制,还是网站本身不允许那么多请求?

非常感谢有关此事的任何帮助或想法!

<?php
include "simplehtmldom_1_5/simple_html_dom.php";
error_reporting(0);

function scrape() {
   // Create HTML DOM (HTML structure and contents)
   $urls = array();
   $urls[] = "http://www.wunderground.com/cgi-bin/findweather/hdfForecast?query=35203";
   $urls[] = "http://www.wunderground.com/cgi-bin/findweather/hdfForecast?query=35813";
   ... // TWO HUNDRED MORE URLS

   // HTML Formatting

   foreach($urls as $url){
      $html = file_get_html($url);

      // PARSE DOM

      $html->clear();
      unset($html);
   }

   // MORE FORMATTING
}

// Set the user agent to the Mozilla Firefox

$ret = scrape();
?>

1 个答案:

答案 0 :(得分:1)

执行php代码时有30秒的限制。所以你需要在php代码的顶部添加这段代码:

set_time_limit(0);