我正在从一个列出一些产品的网站上抓取,我已经将产品页面的 url 保存在数据库中,并循环遍历表格以获取 url 并使用简单的 html dom 解析器进行抓取,我正在使用以下代码。
<?php
error_reporting(E_ALL);
ignore_user_abort(true);
require_once('lib/simple_html_dom.php');
set_time_limit(0);
ini_set('memory_limit', '1024M');
ini_set('max_input_time ', '99999');
$catid = $_REQUEST['catid']; //passing category id from url
//getting category product url's from DB.
$query = mysql_query("select * from cat_prod where catid='".$catid."' ") or die(mysql_error());
if($query){
while($arr = mysql_fetch_array($query)){
$html = file_get_html($arr['purl']);
if(is_object($html)){
$i=1;
foreach ( $html->find('h1') as $elem ){
if(is_object($elem) && isset($elem))
echo $i.' : '.$elem->plaintext.'<br/>';
if($i==2) exit;
$i++;
}
$html->clear();
unset($html);
}
}
}
?>
当我在一次迭代后终止执行时它很好,但不止一次它抛出连接中止错误。