Chrome Headless - Firefox
Я работаю над инструментом мониторинга для моего сайта для регистрации данных. Фактическое ведение журнала производится на сервере. Моя цель - рассчитать статистику на основе того, как долго пользователь остается на сайте.
Главный вопрос: я использовал команду Chrome Headless --remote-debugging-port=80
, Я получил журналы до 10 минут. Работает отлично. Но как долго он будет работать, если останется работать? Есть ли время ожидания по умолчанию? Если да, как я могу это изменить? Если я хочу запустить его ровно через 30 минут после завершения загрузки страницы?
Я пытаюсь сделать то же самое в firefox (пытался использовать PhantomJS, но он не загружал страницу правильно, хотя для useragent было установлено значение firefox), но firefox просто выбрасывает банковскую страницу, когда я пытаюсь запустить режим без головы. Я использовал "firefox -headless" и попытался сделать снимок экрана. Это было просто выход из моих в настоящее время открытых вкладок Firefox без захвата изображения. Любая идея? Использование firefox кванта 59.0. Я не хочу использовать селен.
Также было бы неплохо решение PhantomJS. В настоящее время я просто хочу собирать логи. Таким образом, он должен только запустить весь код javascript (jquery) на странице, которая затем отправляет данные с использованием ajax. Я старался page.onLoadFinished
а затем функцию ожидания, чтобы она оставалась на странице в течение точного времени после загрузки страницы.
1 ответ
Поскольку никто не ответил, я постараюсь ответить на свой вопрос после еще большего исследования и логического мышления.
Основной вопрос: кажется, что тайм-аута нет, но при необходимости можно использовать --timeout X
, Даже если он не идеален, потому что он работает независимо, если страница полностью загружена или нет.
Что касается Firefox, он глючит. -new-instance
(запустить без головы, пока вы уже на Firefox) не работает и -no-remote
не помогло Firefox работает только при запуске только одного экземпляра. Так что, если вы работаете на ПК и хотите запускать тесты, Firefox не для вас. Headless запускается только тогда, когда другие экземпляры Firefox не запущены, а Chrome работает нормально.
PhantomJS не работал, хотя пробовал несколько решений.
Лучшее решение? Используйте хром. Нужен портативный? Используйте хром и используйте без головы. Или напишите свой софт, чтобы использовать cefsharp, который основан на хроме. Ваш браузер со всеми библиотеками будет около 120-200 МБ. Довольно большой для портативного, но делать это работает. То же, что портативный хром или хром. CefSharp имеет привилегию интегрировать все, что вам нравится в браузер, так как это... браузер.