Я пытаюсь получить таблицу с определенным URL-адресом по его идентификатору. Мой метод получает необработанный HTML-код из URL-адреса, преобразовывая его в удобочитаемый DOM для PHP и затем находя таблицу через запрос.Как получить таблицу по ID из URL?
Результаты нижеследующего кода: $elements
всегда пусто (длина 0).
<?php
$c = curl_init('http://www.urlhere.com/');
curl_setopt($c, CURLOPT_RETURNTRANSFER, true);
$html = curl_exec($c);
if (curl_error($c))
die(curl_error($c));
curl_close($c);
$dom = new DOMDocument();
$dom->loadHTML($html);
$xpath = new DOMXpath($dom);
$elements = $xpath->query("*/table[@id=anyid]");
if (!is_null($elements)) {
foreach ($elements as $element) {
echo "<br/>[". $element->nodeName. "]";
$nodes = $element->childNodes;
foreach ($nodes as $node) {
echo $node->nodeValue. "\n";
}
}
}
?>
Как я могу сделать эту таблицу успешно на моей странице?
EDIT:
Фрагмент из HTML Я пытаюсь получить, взятый непосредственно из $html
переменной:
<div></div><table class=sortable id=anyid></table>
добавить цитаты '@ ID = 'anyid'' и убедитесь, что на самом деле загружается на начальном этапе, если его создатель через JS, тогда вы не можете получить это с этим. – Ghost
@Ghost - я уверен, что он загружен изначально, так как он существует в переменной '$ html'. Я попытался добавить цитаты, хотя это тоже не сработало. – Fizzix
не так много, если '$ html' действительно является строкой разметки html, должен [работать] (http://codepad.viper-7.com/oV2zmS) – Ghost