[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Игнорирование ошибки curl
alexbel2404
В общем делаю парсер, сайт донор на некоторых страницах осознанно шлет заголовок с 500 ошибкой, но выдает нормальный html, соответственно парсер перестает работать. Как обойти такую фигню, не добавляю эти страницы в массив для парсинга?



Спустя 4 минуты, 30 секунд (8.03.2012 - 20:05) Visman написал(а):
Там где проверяешь CURLINFO_HTTP_CODE сделай исключение для 500 кода.

Спустя 10 минут, 18 секунд (8.03.2012 - 20:16) alexbel2404 написал(а):
проверок никаких нет)

for ($i = 0; $i < self::$repeatOnError; ++$i) {
if ($content = curl_exec($ch)) {
if (stripos($content, 'id="footer"')) {
self::$last_visited_url = $url; // перезаписываем последний посещенный url для referer
return self::removeNewLines($content);
}
}
}

if (curl_errno($ch)) {
throw new Exception("Error >> " . curl_error($ch));
}


получается, что
if ($content = curl_exec($ch)) {
выдает false из-за ошибки, а мне нужно, чтобы несмотря на ошибку выполнилось условие. Хотя...нафига я тогда столько проверок намутил...В общем не хотелось бы терять страницы из-за этого)

Спустя 9 минут, 17 секунд (8.03.2012 - 20:25) Visman написал(а):
Для такого случая сделай исключение
if ($content == false && curl_getinfo($ch, CURLINFO_HTTP_CODE) == '500')

Спустя 22 часа, 32 минуты, 28 секунд (9.03.2012 - 18:57) alexbel2404 написал(а):
В общем опять поднялся этот вопрос) как скачать html страницы, если сервер шлет 500 ошибку?) и curl и file_get_contents не хотят работать :)

Warning: file_get_contents(урл): failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error

Зайдя через браузер страница открывается, хотя если открыть инструменты разработчика в хроме и посмотреть вкладку network, показывает 500 ошибку :)

Спустя 1 час, 43 минуты, 26 секунд (9.03.2012 - 20:41) alexbel2404 написал(а):
вопрос закрыт) переделал скрипт)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.