Как организовать регулярный парсинг?
1. Парсить параллельно (асинхронно) и записывать результат в базу.
2. Пользователю - показать прелоадер пока не будут собраны данные.
3. Результат парсинга - выдаём всегда из базы.
Мне помогло вот это. В методе run в цикле загружаем сайт, парсим, блокируем структуру, в которую загружаем данные, задержка и заново. В другом методе блокируем эту структуру и используем.