Для себя выработал такую схему:
1 проход, парсим все пагинашки на предмет постов, урлы в базу, мускула с названием и статусом. Обычно формат урла постов статичный и не меняется. Поэтому так. Что дает: ну во первых знаешь сколько парсить нужно страниц, а во вторых можно использовать счетчики.
Далее, делаем крон, который независимо работает в 1 поток или в несколько (курл) дергая с базы урл поста и выставляя статусы по ходу обработки. И второй скрипт, который отображает статистику (сколько осталось, сколько в очереди, сколько в работе и какие, со ссылками. Ошибки и прочее в процентах и просто числах)
По началу делал прогресс бар на жквери, аяксом делал выборку количества страниц для парсинга и уже спаршенных. Но сейчас убрал это, ибо пофиг ) раз в день посмотришь как идет процесс и все. Если 10 подряд ошибок - оповещение на почту и стоп скрипт.
Вот.