Подскажите студенту какими методами можно заставить ждать парсер? Цель: скрипт должен сидеть на сайте до тех пор пока окончательные данные не будут показаны (примерно 10 мин). Данные добавляются в таблицу с разным промежутком времени.
Сергей Явин, там не надо зубрить. Просто вы управляете браузером, который делает то, что вы напишите на Python,Ruby,Java итд. Соответственно, JS выполняется, как положено. Скорость, конечно, не такая ,как в обычном парсинге, но в вашем случае, как я понимаю, это не критично.
А почему бы не взглянуть на их "добавление" изнутри и выполнять эти запросы из скрипта? Вот если там что-то шифруется через JS и параметры "непонятно" закодированные в запросе - тогда да - нужен Selenium.
Открывается "консоль разработчика" в браузере, кладка "Network" смотрите какие запросы были сделаны при появлении данных - там есть тело запроса, можно увидеть все заголовки отправленные браузером. Находите нужный запрос путем анализа принятых данных. Если данные легко читаются(JSON,XML,TXT) - то берете и пользуетесь. Если авторизации нет то проще. А если есть то, при авторизации отправляете пользователь и пароль получаете Cookie заголовок session, потом его отправляете со всеми остальными запросами.
Александр, А как быть если этих json много и нужно как то вытаскивать за раз 5 штук (с перерывом 10 - 15 минут)? Я хочу автоматизировать этот процесс но не знаю как.
Запускать код раз в 10...15 минут(через системный планировщик), складывать результат в файл/базу. За раз 5 штук - это не через 10...15 минут, а раз в час обрабатывать файл с накопленными результатами - передавая их дальше.