Утилита для извлечения данных и парсинга HTML кода

Я иногда ссылаюсь на данную утилиту в примерах. Выкладываю её код и примеры использования.

Примеры использования.

Я привожу пример экспорта статей с одного из своих рабочих проектов — delovoymir2003.ru. Я выполнял программирование и переносом публикаций со старого сайта на сайт под drupal. Пример максимально конкретный.

Далее мы производим «первичный парсинг», т.е. извлекаем нужные куски данных из HTML документа. Они могут потребовать дополнительных проверок и преобразований позднее.

Заголовок статьи в данном примере находится в обрамлении — <h2 class=»itemTitle»>…</h2>. Было бы верно его разместить внутри H1, я сделаю на новом сайте после экспорта.

Курсор внутри объекта parse перемещается за найденный заголовок. Далее идет дата, обрамленная <h4 class=»itemTitle»>…</h4>. Пока просто извлечем её, чтобы на 2м этапе парсинга преобразовать её в UNIX_TIMESTAMP.

Картинка может быть в шаблоне, а может не быть, об этом нам сигнализирует наличие обрамления <div class=»itemImageBlock»>…</div>.

Вводный текст или тизер (краткое изложение) — тоже не обязательный атрибут статьи в примере.

Полный текст может подкинуть разные сюрпризы. Я, например, придерживаюсь правила : не использовать при создании статей тэг-а <div>. Но другие веб-мастера, верстальщики и программисты, могут придерживаться своих правил. :) В том числе, могут не соблюдать рекомендации W3C. Т.е. документ по разным причинам может содержать ошибки. Потому в поисках окончания текста я опираюсь на следующий после статьи блок <div class=»itemBody childs»>…</div>.

Текст утилиты. Класс parser.

 

Мало букафф? Читайте есчо !

Как получить HTTP код ответа удаленного веб-сервера из PHP?

Июнь 23, 2018 г.

Когда требуется получить HTTP код для заданной URL, то вы наверняка воспользуетесь PHP функцией get_headers($url). Дальше я расскажу о разных подводных ...

Читать

PHP проверка адреса электронной почты, email

Ноябрь 10, 2015 г.

Серию валидаторов пополняю функцией проверки введенного email на соответствие формальным требованиям. По стандарту RFC822 Если есть необходимость соблюсти все требования, которые упомянуты в громоздкой спецификации RFC822, то лучший путь - воспользоваться ...

Читать

Как в PHP сделать буквы заглавными?

Сентябрь 13, 2016 г.

PHP обладает целым арсеналом работы со строками. Сделать буквы заглавными или наоборот перевести в строчные - нет ничего проще. Базовый набор функций для работы со строками содержит такие функции как: string strtolower ( string $string ); - ...

Читать

Чтение даты-времени из строки

Февраль 27, 2019 г.

Это частая задача возникает при чтении логов, пользовательских данных и .т.п. PHP даёт пару отличных инструментов, для её решения. Функция strtotime() Эта функция с довольно сложным функционалом, пытается определить не только формат пользовательского ...

Читать
 

Комментарии к «Утилита для извлечения данных и парсинга HTML кода»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: