Как получить текст AJAX RESPONSE из DIV, используя PHP DOMDocument?

Я должен восстановить некоторый текст из div сайта. Div имеет следующую структуру:

Разметка HTML:

<div class="content" id="content">
Loading.....
</div>

Содержание DIV изменяется функцией AJAX, которая находится на загрузке страницы. и содержимое DIV получает изменения через 1 или 2 секунды. И структура HTML становится:

<div class="content" id="content">
<span class"parent">
<span class="child">
<span class="sometext">HERE IS SOME TEXT</span>
</span>
</span>
</div>

Когда я использую следующую функцию PHP (crawl_page) для захвата HTML-кода div с содержимым идентификатора, он всегда возвращает (Загрузка ..), каким он должен быть.

Что мне нужно, это обновленный HTML-код, есть ли способ добиться этого?

function crawl_page($url)
{
$doc = new DOMDocument();
$doc->loadHTMLFile($url);
$xpath = new DOMXPath($doc);
$element = $xpath->query("//*[@id='content']")->item(0);
echo $element->nodeValue;
}

crawl_page("http://example.com/#1:7");

0

Решение

Я надеюсь, что это работает. И скачать включаемый файл с нижеуказанного URL

http://sourceforge.net/projects/simplehtmldom/files/

<?php
// example of how to use basic selector to retrieve HTML contents
include('../simple_html_dom.php');

// get DOM from URL or file
$html = file_get_html('http://example.com/#1:7');

// find all link
foreach($html->find('a') as $e)
echo $e->href . '<br>';

// find all image
foreach($html->find('img') as $e)
echo $e->src . '<br>';

// find all image with full tag
foreach($html->find('img') as $e)
echo $e->outertext . '<br>';

// find all div tags with id=gbar
foreach($html->find('div#content') as $e)
echo $e->innertext . '<br>';

// find all span tags with class=gb1
foreach($html->find('span.gb1') as $e)
echo $e->outertext . '<br>';

// find all td tags with attribite align=center
foreach($html->find('td[align=center]') as $e)
echo $e->innertext . '<br>';

// extract text from table
echo $html->find('td[align="center"]', 1)->plaintext.'<br><hr>';

// extract text from HTML
echo $html->plaintext;
?>
3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]