Пишу парсер id питомцев у пользователя в одном чате.
На 1 страницу выводится 10 питомцев. Если есть больше питомцев, то внизу постраничная навигация. Но как мне сделать так чтобы если есть более 1 страницы, чтобы загружало следующую и парсил id оттуда, и так пока не кончатся страницы.
Парсю так:
<?php
$url = file_get_contents('http://galaxy.mobstudio.ru/services/index.php?userID=17633034&password=pe8o0px8&usercur=7663490&a=pets_menu&&kbv=111&lngg=ru&dbl=4');
preg_match_all('/&petid=([0-9]+)&">/', $url, $arr);
foreach ($arr[1] as $petid) {
echo ''.$petid.'<br />';
}
?>
Помогите пожалуйста.
Спустя 29 минут, 13 секунд (15.04.2012 - 17:02) alexbel2404 написал(а):
пароль с урла убери)
Спустя 4 часа, 9 минут, 58 секунд (15.04.2012 - 21:12) walerus написал(а):
Подставляешь в ссылку номер страницы параметр - "current_page=6"
<?php
$parse = true;
$page = 0; // стартовая страница
while( $parse )
{
$prepare_url = 'http://galaxy.mobstudio.ru/services/index.php?' .
'userID=17633034&password=pe8o0px8&usercur=7663490' .
'&a=pets_menu&&kbv=111&lngg=ru&dbl=4¤t_page=' . $page;
$content = file_get_contents( $prepare_url );
// Проверяем есть ли питомцы на странице
if ( strpos( $content, "Нет питомцев.") == false )
{
echo "Page - " . $page . "<hr>\n"; flush();
preg_match_all('/&petid=([0-9]+)&">/', $content, $arr);
foreach ($arr[1] as $petid)
{
echo $petid . "<br />\n"; flush();
}
$page++;
echo "<br>\n";
}
else
$parse = false;
}
?>
<hr>
DONE.