Сделайте полный скриншот страницы с Firefox в командной строке
Я запускаю Firefox на Xvfb в VPS. То, что я хочу сделать полный скриншот страницы.
Я могу перенаправить Firefox на определенную страницу, используя
firefox http://google.com
и сделайте снимок экрана (внутри X) с помощью ImageMagick
import root -window output.jpg
проблема в том, что большая часть страницы нуждается в прокрутке, и я не могу знать высоту заранее.
другой способ-выбрать очень большую высоту (например, 4000px) , а затем обработать изображение и удалить бесполезное часть. Но это ненужная обработка.
Я нашел много дополнений Firefox, но я ищу решение, которое можно запрограммировать с помощью командной строки оболочки.
Edit: я закончил писать свой собственный расширение FireFox для этого.
5 ответов
С Firefox 16 вы можете нажать shift-F2 или перейти к Инструменты > Веб-Разработчик > Разработчик Инструментов открыть командную строку. Пиши:
screenshot
и нажать интро для того, чтобы взять screeshot.
чтобы полностью ответить на вопрос, вы даже можете сохранить всю страницу, а не только видимую ее часть:
screenshot --fullpage
и чтобы скопировать скриншот в буфер обмена, используйте --clipboard
вариант:
screenshot --clipboard --fullpage
Firefox 18 изменяет способ передачи аргументов командам, вы должны добавить "--" перед ними.
вы можете найти некоторую документацию и полный список команд здесь.
PS. Скриншоты сохраняются в скачать по умолчанию.
обновление 2018-07-23
Как было только что указано в комментариях, этот вопрос касался получения скриншота из командной строки. Извините,я только что прочитал. Итак, вот правильный ответ:
начиная с Firefox 57 вы можете создать скриншот в безголовом режиме, как это:
firefox -screenshot https://developer.mozilla.com
подробнее на документация.
обновление 2017-06-15
начиная с Firefox 55 есть Firefox Скриншоты как более гибкая альтернатива. Начиная с Firefox 57 скриншоты могут захватить полную страницу, тоже.
оригинальный ответ
Так как Firefox 32 есть также кнопка скриншота полной страницы в инструментах разработчика (F12). Если он не включен, перейдите в настройки инструментов разработчика (кнопка передач) и выберите "Сделать снимок экрана fullpage" в разделе " доступные кнопки панели инструментов" раздел.
источник: developer.mozilla.org
по умолчанию скриншоты сохраняются в директорию загрузки. Это работает аналогично screenshot --fullpage
на панели инструментов.
Я закончил кодирование пользовательского решения (расширение Firefox), которое делает это. Я думаю, что к тому времени, когда я разработал его, командной строки, упомянутой в enreas, там не было.
расширение Firefox является CmdShots. Это хороший вариант, если вам нужна более тонкая степень контроля над процессом съемки скриншота (или вы хотите сделать некоторые изменения HTML/JS и обработку изображений).
вы можете использовать его и злоупотреблять ею. Я решил оставить его без лицензии, так что ты свободен. играть с ним, как вы хотите.
Я думаю, что вы ищете утилиту, которая позволяет вам сохранить полное страница, открытая в вашем браузере в png-файл. Скорее всего, вы ищете утилиту, как commandlineprint2.
после установки расширения, вам просто нужно ввести команду:
firefox -print http://google.com -printfile ~/foo.png
Firefox Скриншоты - это новый инструмент, который поставляется с Firefox. Это не инструмент разработчика, он предназначен для конечных пользователей браузера.
чтобы сделать снимок экрана, нажмите на меню действий страницы в адресной строке и нажмите "сделать снимок экрана". Если вы нажмете "сохранить полную страницу", она сохранит всю страницу, прокручивая для вас.