2016-07-09 2 views
2

Я хотел бы подсчитать количество символов и тегов для каждого узла в теге body. Позже это количество символов и тегов будет использоваться для получения плотности для каждого тега. Чтобы получить тело, я использую функцию find() от PHP Simple HTML DOM Parser.извлечение каждого тега html в теле с помощью PHP

function FindBody($str) { 
// String --> DOM Elements 
$string = str_get_html($str); 
// Find body 
$e = $string->find('body'); 
file_put_contents('text_1.txt', $e); } 

выше фрагмент кода будет получить следующий вывод:

<body class="html not-front not-logged-in one-sidebar sidebar-first page-node page-node- page-node-163472 node-type-article page- page- ltr"><div id="skip-link"> <a href="#main-content" class="element-invisible element-focusable">Skip to main content</a>..... </body>

тело будет отличаться каждый раз, когда я получаю HTML из ссылки. Теперь я застрял. Я не знаю, как итеративно/рекурсивно получить каждый тег. Я где-то читал, это можно сделать рекурсивно, но это займет много времени.

Мне нужно использовать DOM, поскольку я следую этому алгоритму.

+0

Один практический метод заключается в использовании ** XSLT. ** Это декларативный язык, который фактически позволяет «запрос» XML-подобный структура , Я оставлю вас «Google it», чтобы понять, что я имею в виду. Но это в основном означает, что вам не нужно «писать сложную * программу» *, чтобы получить информацию из сложного источника XML/XHTML. –

+0

Что вы имеете в виду по количеству символов каждого узла точно? – revo

ответ

0

Если вы хотите только тексты сосчитать, то почему бы не использовать strip_tags

Смежные вопросы