LINUX.ORG.RU

firefox сделать скриншот

 


0

1

Привет. У меня есть ограниченная в ресурсах железка, на которой есть минимальный debian10 и firefox показывающий единственный сайт (информационные табло). Хочу в firefox делать скриншот всей страницы, которая загружается 20 секунд. Вручную делаю так:

жду когда загрузится страница, нажимаю ctrl-shift-k и ввожу команду
:screenshot --fullpage --filename /tmp/1.png

Хочу автоматизировать минимальными средствами. Гугл предлагает ставить кучу левых пакетов, подключать какие-то репозитарии, тащить нодежс и ещё кучу незнакомых мне технологий. Как бы мне по простому это сделать? Например вот так можно?

firefox --start-debugger-server ws:6000 --headless url.ru
sleep 30 
telnet localhost 6000
как-то передать команду 
:screenshot --fullpage --filename /tmp/1.png

вот как передать команду?



Последнее исправление: Perspective (всего исправлений: 1)

Почему бы просто не делать скриншот через API какого-нибудь сервиса? Для этого и браузер не нужен.

Например:

https://www.screenshotmachine.com/

https://www.screenshotmachine.com/website-screenshot-api.php

Там и на BASH есть пример.

Можно поискать и полностью бесплатные или открытые решения.

neocrust ★★★★★
()
Последнее исправление: neocrust (всего исправлений: 1)
Ответ на: комментарий от neocrust

я наверно непонятно написал, но гугл мне уже предложил и

Based on PhantomJS, and written in Node.js

npm install –global capture-website-cli

но мне это не подходит и я спрашиваю не про выбор среди этого, а про простое решение

Perspective
() автор топика
Последнее исправление: Perspective (всего исправлений: 1)
Ответ на: комментарий от Perspective

Не пойму, что ты хочешь сделать. Почему пользователь не может дождаться когда страница загрузится и потом делать скриншот?

eternal_sorrow ★★★★★
()
Ответ на: комментарий от Perspective
firefox -screenshot lor.png https://linux.org.ru

Эта команда дождется загрузки страницы и сделает скриншот всего содержимого. Тебе остается лишь написать простой скрипт по запуску этой команды через определенный промежуток времени или что там тебе нужно.

Что может быть проще?

neocrust ★★★★★
()
Ответ на: комментарий от Perspective

я бы предложил написать простой аддон с такой функциональностью. аддонов для создания скриншотов много, но они не умеют делать это автоматически. но я не вижу проблемы прикрутить такую возможность своему аддону.

eternal_sorrow ★★★★★
()
Ответ на: комментарий от neocrust

если было бы так просто, то я бы не создавал тему.

такая простая команда не умеет ждать полной загрузки страницы - в итоге получаю скриншот бэкграунда без информации.

Perspective
() автор топика
Ответ на: комментарий от neocrust

Не смог победить задержку для браузера, остановился на wkhtmltoimage поскольку оно единственное из кучи перепробованных умеет proxy-hostname-lookup

Спасибо

Perspective
() автор топика

telnet localhost 6000 как-то передать команду

Использовать вместо телнета неткат или сокат и запайпить в него эхом свою команду…

aol ★★★★★
()
Ответ на: комментарий от aol

И какой командой в debugger-server активировать то, что с чем работает web-console, чтобы потом передать мою команду?

Perspective
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.