Join666

Join666
Рейтинг
25
Регистрация
04.12.2008

Здраствуйте!Необходимо отпарсить очень много ссылок!Написал вот так

for($i=0;$i<count($link);$i++) {  
// инициализируем обычный объект curl

$url=str_replace('href=',"",$link[$i]);
$url=str_replace('class="catBigLink"',"",$url);
$url=str_replace('"',"",$url);
$url=str_replace('//',"",$url);
$urlpars="http://www.komus.ru".$url;
//echo($urlpars."<br>");
$handles[$i] = curl_init();

// устанавливаем настройки соединения
curl_setopt($handles[$i] , CURLOPT_URL, $urlpars);
curl_setopt($handles[$i] , CURLOPT_HEADER, 0);
curl_setopt($handles[$i] , CURLOPT_RETURNTRANSFER, true);
curl_setopt($handles[$i] , CURLOPT_TIMEOUT, 15);

// добавляем текущий объект curl в пул multi curl
curl_multi_add_handle($mh,$handles[$i]);

}

// выполняем запрос
$running=null;
do
{
curl_multi_exec($mh,$running);
} while ($running > 0);

// получаем контент со всех сайтов
for($i=0;$i<count($handles);$i++)
{
// получаем контент с определенного сайта
$result= curl_multi_getcontent($handles[$i]);
preg_match_all('/href=.\/catalog.php.catID=[0-9]{1,4}..class="catBigLink"/is', $result, $temp);

//print_r($temp);

for($k=0;$k<count($temp1[0]);$k++)
{
$ssilk[count($ssilk)]=$temp1[0][$k];

}
// удаляем из пула текущий объект curl
curl_multi_remove_handle($mh,$handles[$i]);
if ($temp[0][0]!="") pars1($temp);
}
// освобождаем ресурсы

curl_multi_close($mh);

Но данная конструкция очень долго работает!!!Как ее можно оптимизировать!Заранее спасибо

doszhan, стукнул в асю-тишина!

Sonitta, Отписал в личку!

gruz-trans, Отписал в личку

GorSite, Ответил в личку

27два8ноль060восемь

niceweb, Всегда спасибо!Свободен для заказов!

maviska, Написал в личку

Вновь свободен для заказов

Join666 добавил 04.09.2009 в 12:24

Возьму небольшой заказ дня на 2

ТС отписал в асю но пока тишина!

Всего: 195