пятница, 30 января 2009 г.

Класс HTML парсера на PHP

Привет, кодер!
Встала как-то передо мной задача - отпарсить html страницу. Очень туманно начал, не правда-ли?
Ближе к делу! Понадобилось мне вытащить со страницы все ссылки (ссылка), а именно http://some.site.com. Первое что пришло в голову - RegExp. Подумав ещё раз решил отправиться на поиски готового решения, т.к. изобретение колёс и велосипедов дело неблагодарное (хотя кто-же из нас хоть раз не "грешил").
После продолжительных поисков, наткнулся на очень удобный, на мой взгляд, класс. Итак, встречаем, PHP Simple HTML DOM Parser.
Скачать класс с примерами можно на офф-сайте. После того как архив скачан и распакован, можно приступить к парсингу (точнее говоря скормить классу страничку и получить нужный результат).
Итак, приступим


include('simple_html_dom.php');
$html = file_get_html('http://main.coder.md');
$links= $html->find('a');
foreach($links as $link)
echo $link->href.'
';

В результате выполнения данного кода, мы получим список всех линков на главной странице Кодера.
По-моему всё предельно просто. Если всё-же у вас есть какие-то вопросы - можно обратиться к документации.

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

[Кодер]::Лого :) - просто как всё гениальное.