Chrome Headless - Firefox - PullRequest
       50

Chrome Headless - Firefox

0 голосов
/ 25 апреля 2018

Я работаю над инструментом мониторинга для моего сайта для регистрации данных. Фактическое ведение журнала производится на сервере. Моя цель - рассчитать статистику на основе того, как долго пользователь остается на сайте.

Основной вопрос: Я использовал команду 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 Ответ

0 голосов
/ 27 апреля 2018

Поскольку никто не ответил, я постараюсь ответить на свой вопрос после еще большего исследования и логического мышления.

Основной вопрос: кажется, что тайм-аута нет, но при необходимости можно использовать --timeout X.Даже если он не идеален, потому что он работает независимо, если страница полностью загружена или нет.

Что касается Firefox, он глючит.-new-instance (запустить без головы, пока вы уже используете Firefox) не работает и -no-remote не помогло.Firefox работает только при запуске только одного экземпляра.Так что, если вы работаете на ПК и хотите запускать тесты, Firefox не для вас.Безголовый запускается только тогда, когда другие экземпляры Firefox не запущены, а Chrome работает нормально.

PhantomJS не работает, хотя и пробовал несколько решений.

Лучшее решение?Используйте хром.Нужен портативный?Используйте хром и используйте без головы.Или напишите свой софт, чтобы использовать cefsharp, который основан на хроме.Ваш браузер со всеми библиотеками будет около 120-200 МБ.Довольно большой для портативного, но делать это работает.То же, что портативный хром или хром.CefSharp имеет привилегию интегрировать все, что вам нравится, в браузер, поскольку это ... браузер.

...