Есть страницы в сети. ссылка
Свигетил все в локаль.
Но есть и вот такое вот
Накарябал вот такой код:
<?php
error_reporting(E_ALL);
include('parser/simple_html_dom.php');
for ($a=1; $a<=300; $a++){
$link = "./abitur.nica.ru/vuz_detail.php?code=$a";
$html = file_get_html($link);
echo $a;
foreach($html->find('td[id="content"]') as $error)
$err = $error->childNodes(1)->plaintext;
if ($err == 'Ошибка: Данного вуза нет в базе') continue;
//здесь парсим <h1> и <p> аж 4 строки подряд в планттекст и вставляем туда сплиты для csv
foreach($html->find('h1') as $element)
//echo '"' .$element->plaintext. '";';
foreach($html->find('div[class="contact"]') as $contact)
echo '"' .$element->plaintext. '";';
echo '"' .$contact->first_child()->plaintext. '";';
echo '"' .$contact->childNodes(2)->plaintext. '";';
echo '"' .$contact->childNodes(3)->plaintext. '";';
echo '"' .$contact->childNodes(4)->plaintext. '"<br>';
}
?>
Подскажите, что не так делаю? Куда копать?
Спустя 1 минута, 14 секунд (9.11.2011 - 12:23) alexbel2404 написал(а):
а проблема то в чем?
Спустя 21 минута, 34 секунды (9.11.2011 - 12:44) Richit написал(а):
сложность в том, что он не пропускает те страницы где "ошибка", а просто стопорит. отдельно находит. а в комплекте с for стопорит и фсё
Спустя 36 минут, 6 секунд (9.11.2011 - 13:20) Winston написал(а):
Цитата (Richit @ 9.11.2011 - 11:22) |
"./abitur.nica.ru/vuz_detail.php?code=$a"; |
А ты уверен, что присутствуют все страницы от 1 до 300 ?
Спустя 1 час, 2 минуты, 36 секунд (9.11.2011 - 14:23) Richit написал(а):
да. они у меня на диске и я их все посмотрел.
останавливается на 12 т.е. ее не обрабатывает
останавливается на 12 т.е. ее не обрабатывает
Спустя 4 минуты, 2 секунды (9.11.2011 - 14:27) Winston написал(а):
Если останавливает, то возможно её не существует ?
Спустя 56 минут, 12 секунд (9.11.2011 - 15:23) walerus написал(а):
Winston прав, 12й страницы нету, посмотри на сайте...
Цитата |
Ошибка: Данного вуза нет в базе |
Спустя 16 часов, 43 минуты, 1 секунда (10.11.2011 - 08:06) Richit написал(а):
foreach($html->find('td[id="content"]') as $error)
$err = $error->childNodes(1)->plaintext;
if ($err == 'Ошибка: Данного вуза нет в базе') continue;
Спустя 3 часа, 6 минут (10.11.2011 - 11:12) imbalance_hero написал(а):
Richit
Может слишком долго выполняется? Попробуй: set_time_limit(0);
Может слишком долго выполняется? Попробуй: set_time_limit(0);
Спустя 2 часа, 52 минуты, 36 секунд (10.11.2011 - 14:05) Richit написал(а):
нашел, где собака порылась.
simple_html_dom.php принимает только 11 страниц за раз
можа цикл в цикле попробывать
simple_html_dom.php принимает только 11 страниц за раз
можа цикл в цикле попробывать
Спустя 9 минут, 13 секунд (10.11.2011 - 14:14) Richit написал(а):
$html->clear();
unset($html);
unset($html);