За последние 24 часа нас посетили 21930 программистов и 1095 роботов. Сейчас ищут 716 программистов ...

Парсинг на PHP (вопрос)

Тема в разделе "Прочие вопросы по PHP", создана пользователем Goldinitiate, 31 мар 2019.

  1. Goldinitiate

    Goldinitiate Новичок

    С нами с:
    31 мар 2019
    Сообщения:
    1
    Симпатии:
    0
    Доброго времени суток. Можете помочь правильно спарсить данный html?

    Код (Text):
    1. <tr class="goods">
    2.             <td><a id="goods_69622" href="/goods/info/69622-cryline" style="overflow: visible;"><img class="iconurl swi" src="http://cdn.akamai.steamstatic.com/steam/apps/693440/header.jpg?t=1504201019"><span style="color: red !important; cursor: help;" title="Game or DLC (693440) not owned on Steam
    3. Last updated: 31.03.2019, 20:44:24"> ✘</span><span style="cursor: help;" title="Game (693440) has been in 1 bundles
    4. Last updated: 30.03.2019, 21:27:06"> <a style="color: yellow !important;" href="https://barter.vg/steam/app/693440/#bundles" target="_blank">︎</a></span>CRYLINE</a></td>
    5.             <td title="В наличии 26925 шт." class="td-count">26925</td>
    6.             <td class="td-price">6.00 Руб. / 1 шт.</td>
    7.                         <td class="td-btn">
    8.                         <div class="btn-group">
    9.           <button type="button" class="btn btn-primary dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
    10.             Купить <span class="caret"></span>
    11.           </button>
    12.           <ul class="dropdown-menu">
    13.             <li><a href="#" data-toggle="modal" data-target="#setpaidway" onclick="buy('69622')">Купить</a></li>
    14.             <li><a style="cursor: pointer;" data-buywithcart="yes" data-cart="{&quot;id&quot;:&quot;69622&quot;,&quot;name&quot;:&quot;CRYLINE&quot;,&quot;min_order&quot;:&quot;1&quot;,&quot;count&quot;:&quot;26925&quot;,&quot;price&quot;:&quot;6.00&quot;,&quot;price_pp&quot;:&quot;0.09&quot;}">В корзину</a></li>
    15.           </ul>
    16.         </div>
    17.          </td>
    18.                  </tr>
    Пытаюсь спарсить таким образом:

    Код (Text):
    1. <?php
    2.     include_once('H/curl_query.php');
    3.     include_once('H/simple_html_dom.php');
    4.  
    5.     $html = curl_get('st.html');
    6.     $dom = file_get_html('st.html');
    7.  
    8.     $cou = $dom->find('.goods');
    9.  
    10.     foreach($cou as $cour){
    11.     echo $cour->plaintext . '<br>';
    12.     }
    13.     ?>
    Выводит: "✘ CRYLINE 14245 6.00 Руб. / 1 шт. Купить Купить В корзину"

    Нужно чтобы выводило только название - "CRYLINE". Как только не пробовал, кучу роликов пересмотрел, не получается. Вся надежда на вашу поддержку.

    P.s. Пытался еще одним способом, но выводит: "array()" и все.

    Код (Text):
    1. <?php
    2.  
    3.     $curl = curl_init();
    4.     $url = "st.html";
    5.     curl_setopt($curl, CURLOPT_URL, $url);
    6.     curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    7.  
    8.     $result = curl_exec($curl);
    9.  
    10.     $movies = array();
    11.  
    12.     preg_match_all('!<\/span>"(.*?)"<\/a>!',$result,$match);
    13.     $movies['name'] = $match[1];
    14.     print_r($movies['name'];
    15.  
    16.     ?>
     
  2. Dmitry Lazarev

    Dmitry Lazarev Новичок

    С нами с:
    17 май 2019
    Сообщения:
    7
    Симпатии:
    0
    Вариант 2, строка 12:
    Код (Text):
    1. preg_match_all('!<\/span>(.*)<\/a>!',$result,$match);
    Строка 13:
    Код (Text):
    1. $movies['name'] = $match[1][0];
     
  3. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    Учитывая то, что обсуждение парсеров на данном форуме "не в чести", надежда достаточно призрачная.
     
  4. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.553
    Симпатии:
    631
    Это никогда не помогает