Юрий Коваленко
Знаток
(388),
на голосовании
2 года назад
Есть вот такой парсер:
$content = file_get_contents('http://сайт/ratings/?rating=5&page=19714'); //откуда будем парсить информацию $pos = strpos($content, '<table class="rating-info">'); // определяем позицию строки, до которой нужно все отрезать $content = substr($content, $pos); //отрезаем все, что идет до нужной нам позиции $pos = strpos($content, '<span class="paginator ctr-block">'); // точно таким же образом находим позицию конечной строки $content = substr($content, 0, $pos); // отрезаем нужное количество символов от нулевого $content = str_replace('?user_id=','"></a><center>', $content); //если в тексте встречаетс¤ текст, который нам не нужен, вырезаем его $content = str_replace('<td class="rating-left ">','', $content); $content = str_replace('<td class="rating-right">','', $content); $content = str_replace('"> ',' ', $content); echo $content; // выводим спарсенный текст.
$content = file_get_contents('http://сайт/ratings/?rating=5&page=19715'); //откуда будем парсить информацию $pos = strpos($content, '<table class="rating-info">'); // определяем позицию строки, до которой нужно все отрезать $content = substr($content, $pos); //отрезаем все, что идет до нужной нам позиции $pos = strpos($content, '<span class="paginator ctr-block">'); // точно таким же образом находим позицию конечной строки $content = substr($content, 0, $pos); // отрезаем нужное количество символов от нулевого $content = str_replace('?user_id=','"></a><center>', $content); //если в тексте встречаетс¤ текст, который нам не нужен, вырезаем его $content = str_replace('<td class="rating-left ">','', $content); $content = str_replace('<td class="rating-right">','', $content); $content = str_replace('"> ',' ', $content); echo $content; // выводим спарсенный текст.
19714 и 19715 это страницы сайта... Страниц спарсить нужно порядка 90000... Парсер под каждую страницу прописывается отдельно, в виду чего код получается очень тяжелым.
Как упростить код, чтоб спарсить 1-90000 страницы?)
$content = file_get_contents('http://сайт/ratings/?rating=5&page=19714'); //откуда будем парсить информацию
$pos = strpos($content, '<table class="rating-info">'); // определяем позицию строки, до которой нужно все отрезать
$content = substr($content, $pos); //отрезаем все, что идет до нужной нам позиции
$pos = strpos($content, '<span class="paginator ctr-block">'); // точно таким же образом находим позицию конечной строки
$content = substr($content, 0, $pos); // отрезаем нужное количество символов от нулевого
$content = str_replace('?user_id=','"></a><center>', $content); //если в тексте встречаетс¤ текст, который нам не нужен, вырезаем его
$content = str_replace('<td class="rating-left ">','', $content);
$content = str_replace('<td class="rating-right">','', $content);
$content = str_replace('">
',' ', $content);
echo $content; // выводим спарсенный текст.
$content = file_get_contents('http://сайт/ratings/?rating=5&page=19715'); //откуда будем парсить информацию
$pos = strpos($content, '<table class="rating-info">'); // определяем позицию строки, до которой нужно все отрезать
$content = substr($content, $pos); //отрезаем все, что идет до нужной нам позиции
$pos = strpos($content, '<span class="paginator ctr-block">'); // точно таким же образом находим позицию конечной строки
$content = substr($content, 0, $pos); // отрезаем нужное количество символов от нулевого
$content = str_replace('?user_id=','"></a><center>', $content); //если в тексте встречаетс¤ текст, который нам не нужен, вырезаем его
$content = str_replace('<td class="rating-left ">','', $content);
$content = str_replace('<td class="rating-right">','', $content);
$content = str_replace('">
',' ', $content);
echo $content; // выводим спарсенный текст.
19714 и 19715 это страницы сайта...
Страниц спарсить нужно порядка 90000...
Парсер под каждую страницу прописывается отдельно, в виду чего код получается очень тяжелым.
Как упростить код, чтоб спарсить 1-90000 страницы?)