Страница 1 из 2
обработать код страницы
Добавлено: 16 июл 2011, 20:53
ukhov
есть страница (удалённая, на другом сайте). В некоторой части её кода повторяется:
Код: Выделить всё
<a href='http://site.ru/1/2/3/xxxxx' подсказка='lllll 357'>357</a>
Где урл всегда одинаковый кроме ххххх. Номера всегда разные (357 привёл к примеру). А lll всегда одинаковые. Как всё это мо жно обработать? Например, for each { ... $xxxxx = $p['xxxxx']; // извлечённое из урл, ну и так с каждым лараметром ... }
Re: обработать код страницы
Добавлено: 17 июл 2011, 05:35
bodnar
explode ?
Re: обработать код страницы
Добавлено: 17 июл 2011, 10:13
ukhov
explode это когда есть готовая строка без лишнего кода
а там всякие
Код: Выделить всё
<html> efg wehg eh g eh e wh d ed httrhrt rh eh whweh wehw h // код страницы (ненужный) // НУЖНОЕ <a href='http://site.ru/1/2/3/uGFoP' подсказка='lllll 1'>1</a><a href='http://site.ru/1/2/3/Pd8jK' подсказка='lllll 2'>2</a><a href='http://site.ru/1/2/3/l8jHT' подсказка='lllll 3'>3</a> // НУЖНОЕ jirnht r th er h e rh re h rekj hkerhreehtyphpyt // код страницы (ненужный) </html>
и так около 1000. и надо чтобы как например из mysql каждая строка обрабатывается
Код: Выделить всё
$query = "SELECT * FROM `tabliza`";$res = mysql_query($query) or die(mysql_error()); $number = mysql_num_rows($res); if ($number == 0) { echo "<P>Записей в базе нет"; } else { /* Получать по одной строке из таблицы в массив $row, пока строки не кончатся */ while ($row=mysql_fetch_array($res)) { echo " Имя : ".$row['first_name']."<br>Фамилия : ".$row['last_name']."<br>=============================== "; } }
Re: обработать код страницы
Добавлено: 17 июл 2011, 11:01
bodnar
можно. просто надо поизвращаться сильно.
регулярки мучай
Re: обработать код страницы
Добавлено: 17 июл 2011, 14:46
Александр
Сначала выбери нужную часть страницы
Код: Выделить всё
preg_match_all( '#<span>(.+?)</span>#is', $html, $matches); // например текст между тегами <span></span>
Потом её обработай
Код: Выделить всё
preg_match_all('#\'>(.+?)</a>#is', $html, $matches); foreach ($matches[1] as $value) { echo $value.'<br />'; }
Апостроф заэкранируй '#\'>
Парсер форума съедает.
Re: обработать код страницы
Добавлено: 17 июл 2011, 20:07
ukhov
если честно не очень понятно
preg_match_all - <span> заменить на код страницы (лишний), который до нужного кода. а </span> заменить на код страницы (лишний), который посленужного кода, да?
а что здесь значит $html и $matches и $value?
Re: обработать код страницы
Добавлено: 18 июл 2011, 19:19
Nick Lisogor
Учи php...
Re: обработать код страницы
Добавлено: 18 июл 2011, 19:47
ukhov
Nick Lisogor писал(а):Учи php...
а сам то можешь ответить?????
Re: обработать код страницы
Добавлено: 18 июл 2011, 19:49
Nick Lisogor
Да, конечно. Это не сложно, если ты что-то учишь, а не достаешь людей вопросами, ответы на которые даже в гугле можно за 5 минут найти.
Re: обработать код страницы
Добавлено: 18 июл 2011, 20:51
Александр
ukhov
http://www.php.su/functions/?preg-match-all
ukhov писал(а): <span> заменить на код страницы (лишний), который до нужного кода. а </span> заменить на код страницы (лишний), который посленужного кода, да?
Не весь код страницы до и после, а те части кода, по которым можно точно определить нужный фрагмент
Например
Код: Выделить всё
preg_match_all('#'>(.+?)</a>#is', $html, $matches);
Отделит в
Код: Выделить всё
<a href='http://site.ru/1/2/3/Pd8jK' подсказка='lllll 2'>2</a>
фрагмент между '> и </a>.