получить HTML-контент с PHP

0

Я пытаюсь извлечь данные из html-документа.

<table style="border:0px none;margin:0px;padding:0px"><tr><td valign="middle"><p style="background-color:#EE0000;color:#fff;margin-right:5px;padding: 2px 3px;"><b>7767</b></p></td><td valign="middle"><h2 style="padding:1px">title 2</h2></td></tr></table>

есть неопределенное количество таблиц на странице, подобной этой, каждый раз, когда есть таблица, я хочу получить номер после стиля, здесь 7767, а предложение во втором, здесь название 2. Я нашел несколько примеров, которые я пробовал отрегулировать их, но он все еще не работает

$html = file_get_html('http://website.com/');


foreach($html->find('table') as $article) {
    $item['nummer']     = $article->find('td.b', 0)->plaintext;
    $item['title']    = $article->find('td.h2', 0)->plaintext;
    $articles[] = $item;
}
  • 0
    td.b означает тег TD с class="b" , а td.h2 означает тег TD с class="h2" . Почему вы указываете классы в своих селекторах, когда ваши данные не имеют этих классов?
  • 1
    @TheGuywithTheHat: будь модным .
Показать ещё 1 комментарий
Теги:
fetch
simple-html-dom

1 ответ

1

. для указания классов. Если вы хотите указать, что один элемент находится внутри другого, разделите их пробелом:

$item['nummer']     = $article->find('td b', 0)->plaintext;
$item['title']    = $article->find('td h2', 0)->plaintext;

Синтаксис для аргумента find в основном так же, как CSS селекторы.

  • 0
    Или > указать только прямые дочерние элементы ...
  • 0
    Я думал об этом упомянуть, но не думаю, что это необходимо в этом случае.
Показать ещё 1 комментарий

Ещё вопросы

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