PHP SimpleHTMLDOM: как получить значение из div по имени класса внутри другого div?

0

У меня есть следующий фрагмент HTML:

<div class="price-box szczeg_oper">
            <div class="row">
              <div class="col c-1-2 c-xs-1-1">
                <div class="price netto">cena: 11.30 <span class="currency">CZK</span></div>                <div class="ad_koszyk row">
          <div class="col c-1-2 c-xs-1-2">
            <div class="quantity lng_cz">        
              <label>množství</label>
              <input type="text" size="1" id="quantity_178" name="quantity" value="1" data-cip-id="quantity_178">
            </div>
          </div>
          <div class="col c-1-2 c-xs-1-2">
            <input type="hidden" name="parametersValue" value="">
            <input class="button pull-right" name="przyciskz" type="submit" value="Do košíku" onclick="ajax_cart_add(178, jQuery('#quantity_178').val(), 'cz', 0.115); return false;">
          </div>
         </div>              </div>
              <div class="col c-1-2 c-xs-1-1">
                                <div class="product-availability">Zboží je k dispozici na skladě</div>
              </div>
            </div>
          </div>

Я пытаюсь получить ценность внутри дела.

Div с тем же классом содержится в документе несколько раз. Так что мне нужно получить только этот внутри div

Если я попробовал это:

 //GET NETTO PRICE
    foreach($html->find('div[class=price-box szczeg_oper]') as $element){
        $itemPrice = $element->plaintext;
    }

Я получил текст целого div.

Как я могу получить доступ к внутренним элементам внутри найденного div по классам?

Я пытался найти решение в документации, но не повезло:

http://simplehtmldom.sourceforge.net/manual.htm

Большое спасибо за любые советы

  • 0
    Вам нужно использовать PHP для этого? Если вы просто хотите получить один из внутренних элементов div, вы можете использовать GetElementsByClassName из javascript
  • 1
    Да, мне нужно использовать PHP
Теги:
web-scraping
simple-html-dom

1 ответ

3
Лучший ответ

Я предполагаю, что после цены

foreach($html->find('div[class=price-box szczeg_oper]') as $element){
    $itemPrice = $element->find('.price',0)->plaintext;
}
  • 0
    В foreach указан неверный аргумент ()
  • 0
    Отредактировал мой ответ, если он неправильный, пожалуйста, уточните, какие именно данные вы ищете в своем примере HTML
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню