Атрибута href может и не оказаться у элемента a.
Вообще элемент - это
<название_элемента атрибут1="значение" атрибут2="значение" ... атрибутN="значение">тело</название_элемента>
В-общем, тот же XML.
Ещё может быть самозакрывающийся вариант
<название_элемента атрибуты />
Но он к a не относится.
Вообще по сути можно юзать парсер XML для этой цели, но помни, что какие только Васи Пупкины не пишут в Интернете. Поэтому готовься к незакрытым тегам, значениям атрибутов без кавычек и т.д.
Именно поэтому я бы советовал использовать (если это возможно) бравузер+javascript+jQuery, т.к. парсер DOM браузера уже готов к таким сюрпризам. Не надо за него изобретать велосипед.
Вообще если не секрет какое назначение программы? "На один раз"? Дистрибьюция?