Я использую Symfony, Goutte и DOMCrawler для очистки страницы. К сожалению, на этой странице много старомодных таблиц данных, а также нет идентификаторов или классов или идентифицирующих факторов. Поэтому я пытаюсь найти таблицу, проанализировав исходный код, который я получил от запроса, но я не могу получить доступ к какой-либо информации.DOMCrawler не правильно загружает данные для разбора
Я думаю, что когда я пытаюсь отфильтровать его, он фильтрует только первый узел, и это не то место, где мне нужны мои данные, поэтому он ничего не возвращает.
поэтому у меня есть объект $crawler
. И я пытался перебрать следующем, чтобы получить то, что я хочу:
$title = $crawler->filterXPath('//td[. = "Title"]/following-sibling::td[1]')->each(funtion (Crawler $node, $i) {
return $node->text();
});
Я не уверен, что Crawler $node
, я только что получил его от, например, на веб-странице. Возможно, если я смогу получить эту работу, тогда она будет проходить через каждый узел в объекте $crawler
и найти то, что я на самом деле ищу.
Вот пример страницы:
<table>
<tr>
<td>Title</td>
<td>The Harsh Face of Mother Nature</td>
<td>The Harsh Face of Mother Nature</td>
</tr>
.
.
.
</table>
И это только одна таблица, есть много столов и огромный неряшливо беспорядок за пределами этого. Есть идеи?
(Примечание: ранее я смог применить фильтр к объекту $crawler
для получения некоторой информации, необходимой мне, затем I serialize()
информации и имеет строку, наконец, которая имеет смысл. Но я больше не могу получить строку , ИДК почему)