У меня есть таблица, число столбцов которой может меняться в зависимости от конфигурации сломанной страницы (я не контролирую ее). Я хочу получить только информацию из определенного столбца, обозначенного заголовком столбцов.
Вот упрощенная таблица:
<table> <tbody> <tr class='header'> <td>Image</td> <td>Name</td> <td>Time</td> </tr> <tr> <td><img src='someimage.png' /></td> <td>Name 1</td> <td>13:02</td> </tr> <tr> <td><img src='someimage.png' /></td> <td>Name 2</td> <td>13:43</td> </tr> <tr> <td><img src='someimage.png' /></td> <td>Name 3</td> <td>14:53</td> </tr> </tbody> </table>
Я хочу только извлечь имена (столбец 2) таблицы. Однако, как было сказано ранее, порядок столбцов не может быть известен. Например, столбец «Изображение» может отсутствовать, и в этом случае столбец, который мне нужен, будет первым.
Мне было интересно, есть ли способ сделать это с помощью DomDocument
/ DomXPath
. Возможно, найдите строку «Имя» в первом tr
и узнайте, какой индекс столбца она есть, а затем используйте ее для получения информации. Менее элегантным решением было бы увидеть, есть ли в первом столбце тег img
, и в этом случае столбец изображения является первым, и поэтому мы можем бросить этот путь и использовать следующий.
Смотря на это около полутора часов, но я не знаком с функциями DomDocument и манипуляциями. У вас много проблем с этим.