Вы не зашли.
Главная » PHP » Помогите спарсить текст
#1. WapStyle Off (3)
Участник
2014.03.20 16:04
Код:
<a href="[1]" class="b-application__image-link"><img src="[2]" alt="[3]" class="b-application__image"></a>
<div class="b-application__panel">
<h2 class="b-application__title b-colorized_color_two"><a href="[4]" class="b-application__title-link">[5]</a></h2>
<span class="b-stars b-stars_size_big b-application__rating"><span class="b-stars__progress" style="width: 85%;"></span></span>
<span class="b-application__category-wrapper">
<i class="b-application__category-icon b-icon b-icon_type_category"></i>
<a href="[6]" class="b-application__category">[7]</a>
</span>
<p class="b-application__description">[8]</p>
</div>
Цифрами отмечено что нужно вытащить, данный код повторяется 11 раз (11 файлов на 1 стр)
Заранее спасибо кто поможет.
#2. Gemorroj Off (107)
Administrator
2014.03.20 18:06
сгружай страницу через simplexml_load_file и работай с готовым объектом.
#3. WapStyle Off (3)
Участник
2014.03.20 18:06
Всёравно непонял как через него сделать?
Я же граблю страницу а не xml  yikes
Отредактировано WapStyle (2014.03.20 18:06)
#4. Gemorroj Off (107)
Administrator
2014.03.20 18:06
приведенный код на странице отвечает правилам xml. так что зачатую удобно и работать с такими страницами как с xml
#5. WapStyle Off (3)
Участник
2014.03.20 19:07
Я год не работал с php. глянул минуал.."добавил к каше в своей голове ещё 1 +" помоги,а загадки я не могу понять
#6. TLENS Off (14)
Moderator
2014.03.21 02:02
WapStyle как то так
Код:
span style="color: #0000BB"><?php$str = '<a href="[1]" class="b-application__image-link"><img src="[2]" alt="[3]" class="b-application__image"/></a><div class="b-application__panel"> <h2 class="b-application__title b-colorized_color_two"><a href="[4]" class="b-application__title-link">[5]</a></h2> <span class="b-stars b-stars_size_big b-application__rating"><span class="b-stars__progress" style="width: 85%;"></span></span> <span class="b-application__category-wrapper"> <i class="b-application__category-icon b-icon b-icon_type_category"></i> <a href="[6]" class="b-application__category">[7]</a> </span> <p class="b-application__description">[8]</p></div>';$DOM = new DOMDocument;$DOM->loadHTML($str);$items = $DOM->getElementsByTagName('a');for ($i = 0; $i < $items->length; $i++) { echo "tag a:<br />"; echo "&nbsp;&nbsp;&nbsp;&nbsp;value: \"{$items->item($i)->nodeValue}\"<br />"; for ($n = 0; $n < $items->item($i)->attributes->length; $n++) { echo "&nbsp;&nbsp;&nbsp;&nbsp;attr: \"{$items->item($i)->attributes->item($n)->name}\" = " . "\"{$items->item($i)->attributes->item($n)->value}\"<br />"; }}
#7. WapStyle Off (3)
Участник
2014.03.21 19:07
TLENS что это? как не пытался.. не дошло до меня
#8. TLENS Off (14)
Moderator
2014.03.21 19:07
WapStyle это DOM документ) http://www.php.net/manual/ru/class.domdocument.php
а я понял тебе нужен горовый вариант?))
Вообще я в таких случаях юзал регулярки. Знаю регулярки это зло и блаблабла. Но...
Код:
span style="color: #0000BB"><?php $str = '<a href="[1]" class="b-application__image-link"> <img src="[2]" alt="[3]" class="b-application__image"/></a><div class="b-application__panel"> <h2 class="b-application__title b-colorized_color_two"> <a href="[4]" class="b-application__title-link">[5]</a> </h2> <span class="b-stars b-stars_size_big b-application__rating"> <span class="b-stars__progress" style="width: 85%;"></span> </span> <span class="b-application__category-wrapper"> <i class="b-application__category-icon b-icon b-icon_type_category"></i> <a href="[6]" class="b-application__category">[7]</a> </span> <p class="b-application__description">[8]</p></div>';preg_match_all ( '/<a\s+href="([^"]*)"\sclass="b-application__image-link">\s*' . '<img\ssrc="([^"]*)"\s*alt="([^"]*)"\s*class="b-application__image"\s*\/>.*?' . '<a\s+href="([^"]*)"\s*class="b-application__title-link">(.*?)<\/a>.*?' . '<a\s+href="([^"]*)"\s*class="b-application__category">(.*?)<\/a>.*?' . '<p\s+class="b-application__description">(.*?)<\/p>' . '/su' , $str, $results);var_dump($results);
Результат:
array (size=9)
  0 =>
    array (size=1)
      0 => string '<a href="[1]" class="b-application__image-link">
    <img src="[2]" alt="[3]" class="b-application__image"/>
</a>
<div class="b-application__panel">
    <h2 class="b-application__title b-colorized_color_two">
        <a href="[4]" class="b-application__title-link">[5]</a>
    </h2>
    <span class="b-stars b-stars_size_big b-application__rating">
        <span class="b-stars__progress" style="width: 85%;"></span>
    </span>
    <span class="b-application__category-wrapper">
      <i class="b-app
'... (length=694)
  1 =>
    array (size=1)
      0 => string '[1]' (length=3)
  2 =>
    array (size=1)
      0 => string '[2]' (length=3)
  3 =>
    array (size=1)
      0 => string '[3]' (length=3)
  4 =>
    array (size=1)
      0 => string '[4]' (length=3)
  5 =>
    array (size=1)
      0 => string '[5]' (length=3)
  6 =>
    array (size=1)
      0 => string '[6]' (length=3)
  7 =>
    array (size=1)
      0 => string '[7]' (length=3)
  8 =>
    array (size=1)
      0 => string '[8]' (length=3)
Страниц: 1
Главная
WEB
PunBB Mod v0.6.2
0.018 s