Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > вытащить все ссылки с html страницы и их текст


Автор: poss 15.8.2014, 17:45
Код


часть html кода страницы:
.....................
<div class="labeled name"><a href="/kartashov_dima" onclick="return nav.go(this, event);">Дима Карташов</a>
<a href="/verify" class="search_verified" onmouseover="pageVerifiedTip(this, {mid: 2963876, s: 1})"></a></div><div class="labeled ">МГУ</div>
..................


Нужно вытащить все что находится между тэгом <div> и </div>

Автор: Game-lot 16.8.2014, 08:03
ф-я preg_match() и регулярные выражения Вам в помощь

Этот ответ добавлен с нового Винграда - http://ru.vingrad.com/vytashchit-vse-ssylki-s-html-stranitsy-i-ikh-tekst-id53ee1da3ae2015925d8b456d#findElement_E7045_53eee61aae20155c36b4219b_0

Автор: Gold Dragon 20.8.2014, 18:39
Цитата(Game-lot @  16.8.2014,  09:03 Найти цитируемый пост)
ф-я preg_match() и регулярные выражения Вам в помощь
скорее всего  preg_match_all()

и вот например
Код

$matches = null;

$str = '<div class="labeled name"><a href="/kartashov_dima" onclick="return nav.go(this, event);">Дима Карташов</a>
<a href="/verify" class="search_verified" onmouseover="pageVerifiedTip(this, {mid: 2963876, s: 1})"></a></div><div class="labeled ">МГУ</div>';

$returnValue = preg_match_all('#<div.*?>(.*?)</div>#siu', $str, $matches);

print_r($matches)


Результат:
Цитата

array (
  0 => 
  array (
    0 => '<div class="labeled name"><a href="/kartashov_dima" onclick="return nav.go(this, event);">Дима Карташов</a>
<a href="/verify" class="search_verified" onmouseover="pageVerifiedTip(this, {mid: 2963876, s: 1})"></a></div>',
    1 => '<div class="labeled ">МГУ</div>',
  ),
  1 => 
  array (
    0 => '<a href="/kartashov_dima" onclick="return nav.go(this, event);">Дима Карташов</a>
<a href="/verify" class="search_verified" onmouseover="pageVerifiedTip(this, {mid: 2963876, s: 1})"></a>',
    1 => 'МГУ',
  ),
)

Автор: s0lman 26.8.2014, 17:54
Если нужно извлечь много ссылок на многих страницах, лучше воспользоваться какой-нибудь библиотекой, например, http://simplehtmldom.sourceforge.net/manual.htm

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)