Извлечь содержимое HTML-страницы в PHP - PullRequest
0 голосов
/ 16 января 2012

Существует любой способ извлечь содержимое страницы HTML, которая начинается с <body> и заканчивается на </body> в php.Если кто-нибудь может выложить пример кода.

Ответы [ 3 ]

6 голосов
/ 16 января 2012

Вы должны взглянуть на ссылку DOMDocument.

Этот пример читает html-документ, создает DOMDocument и получает тег body:

libxml_use_internal_errors(true);
$dom = new DOMDocument;
$dom->loadHTMLFile('http://example.com');
libxml_use_internal_errors(false);

$body = $dom->getElementsByTagName('body')->item(0);

echo $body->textContent; // print all the text content in the body

Вам также следует проверить следующие ресурсы:

Документация по DOM API
Спецификация языка XPATH

1 голос
/ 02 октября 2015

Вы также можете попробовать использовать решение без DOM, основанное на функции strpos:

$html = file_get_contents($url);
$html = substr($html,stripos($html,'<body>')+6);
$html = substr($html,0,strripos($html,'</body>'));

stripos - без учета регистра версия strpos, strripos - без учета регистра 'крайняя правая позиция' версии strpos.

Надеюсь, что это вам поможет!

1 голос
/ 16 января 2012

Попробуйте PHP Простой HTML DOM Parser

$html = file_get_html('http://www.example.com/');
$body = $html->find('body');
...