Такой скрипт:
function titleLink($url) {
//проверяем, если кириллический домен, то конвертируем его
if (preg_match('/[а-яА-Я]/', $url)) {
require_once('modules/idna_convert.class.php');
$convert=new idna_convert();
$url=$convert->encode($url);
}
$title="";
//получаем удаленную страницу
@$page=file_get_contents($url);
if ($page) {
//находим и выдираем титул
if (eregi("<title>(.*)</title>", $page, $out)) {
$title=$out[1];
//проверяем кодировку, если windows-1251 то конвертируем в utf-8
if (mb_check_encoding($title, 'Windows-1251') && !mb_check_encoding($title, 'UTF-8')) {
$title=iconv("CP1251//IGNORE", "UTF-8", $title);
}
}
}
return $title;
}
Результат получаю где-то в 75% запросов. Причем титул бывает не удается получить с самых обычных среднестатистических страницах и даже например, на второй и третьей страницы получил титул, а на четвертой не получил, с одного сайта.
Как можно улучшить работу скрипта, для более успешного парсинга?