Довольно часто встаёт задача разбора HTML (его парсинга). Неважно какие цели мы при этом преследуем. Для этого специально разрабатывают парсеры. Буквально на днях набрёл на один из таких парсеров, написанный на языке РНР — очень порадовал. Советую попробовать.