С такими большими кусками HTML, я бы отправил это на внешний процесс, вероятно, на Perl-скрипт
Я не уверен, так как никогда не пытался анализировать что-либо рядом с таким большим количеством текста, но я готов быть уверен, что PHP не собирается делать это быстро.
Какова ваша ожидаемая нагрузка? Как часто вы собираетесь делать этот тип обработки? Это звучит как то, что вы бы сделали как пакетную операцию, которая, по общему признанию моего ограниченного опыта с такими задачами, не обязательно должна быть супер быстрой, но достаточно быстрой, чтобы она выполнялась за разумное время (т. Е. ты не ждешь этого всю ночь или что-то еще)