Ребят пробую спарсить страницу с 1000+ товарами. cURL падает с ошибкой
Proc with args = ['php', 'parser.php', 'https://site.ru/products'] exited with code = 255
stderr = PHP Warning: Module 'curl' already loaded in Unknown on line 0
PHP Fatal error: Call to a member function find() on a non-object in /data/Projects/website/app/parsers/parser.php on line 42
``
Вот код парсера
function parse_site($url, $cookie){
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_NOBODY, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 900);
curl_setopt($ch, CURLOPT_TIMEOUT, 900);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$curl_body = curl_exec($ch);
curl_close($ch);
$html_body = str_get_html($curl_body);
if(!$html_body->find(CONST_ITEMS_TAG)) //42 строчка
return getErrorMsg(1, CONST_ITEMS_TAG); //43 строчка
foreach($html_body->find(CONST_ITEMS_TAG) as $items){
.........парсим
}
}
Для парсинга тела юзаю simple html dom. В чём косяк? Я подозреваю cURL не может тело нормально получить... ибо если товаров на странице менее 100 - всё нормально.