генерировать изображение (например, jpg) веб-страницы?

Я хочу создать изображение, на что похожа веб-страница, например, создайте маленькую миниатюру HTML + изображения. это не должно быть прекрасно (например, высветить / рендеринг JavaScript).

Я буду звонить, используют код на Linux, идеально была бы некоторая библиотека Java, но инструмент командной строки будет классным также.

какие-либо идеи?

17
задан tshepang 12 May 2014 в 20:27
поделиться

4 ответа

Попробуйте CutyCapt , утилиту командной строки. Он использует Webkit для рендеринга и вывода в различных форматах (SVG, PNG и т. Д.).

12
ответ дан 30 November 2019 в 14:17
поделиться

Чтобы сделать снимок экрана в терминале с помощью ImageMagick, введите в терминал следующую строку, а затем щелкните и перетащите мышь по участку экрана:

import MyScreenshot.png

Чтобы сделать снимок всего экрана с некоторой задержкой и изменить его размер, используйте следующую команду:

import -window root -resize 400×300 -delay 200 screenshot.png 

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

#!/bin/bash
window_id=`xwininfo -tree -root | grep Mozilla | awk '{print $1}'`
import -window $window_id -resize 100x100 tumb.png

Этот скрипт создаст снимок экрана Firefox размером 100x100 в текущем каталоге под именем tumb.png

Несколько источников показывают, как запустить bash-скрипт изнутри Java-приложения, google может помочь вам в этом. Если вы торопитесь, посмотрите это и это.

1
ответ дан 30 November 2019 в 14:17
поделиться

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

BrowserShots - это проект с открытым исходным кодом, который может содержать некоторый код, который вы можете использовать.

также смотрите:

2
ответ дан 30 November 2019 в 14:17
поделиться

Если вас интересует Java, возможно, вам стоит взглянуть на автоматизацию браузера с использованием Selenium-RC http://seleniumhq.com

Это небольшой сервер Java, который вы можете установить на приставке, и сама программа будет выполнять удаленные команды в веб-браузере.

Такие шаги, как (кстати, это псевдокод, я кодирую свой Selenium на php и не могу вспомнить 100% деталей в голове)

selenium.location("http://foo.com")
selenium.open("/folder/sub/bar.html")
selenium.captureScreenshot("/tmp/" + this.getClass().getName() + "."
                               + testMethodName + ".png");

На самом деле, я только что провел быстрый поиск в Интернете для точный синтаксис последнего ... и у этого парня есть блог с тем, что на самом деле может быть рабочим кодом на java :) https://dev.youdevise.com/YDBlog/index.php?title=capture_screenshots_of_selenium_browser_&more=1&c=1&tb=1&pb=1

Есть также ряд веб-сайтов, которые предоставляют эту услугу «кроссбраузерность и ОС» I просто не могу вспомнить, что это такое. По сути, у них есть облако каждой комбинации операционной системы и браузера, и они входят в систему с каждой машины, берут экран и сохраняют его на своем сайте, чтобы вы могли вернуться к нему через несколько часов, когда они будут готовы.

Ах ... еще один веб-поиск, и он ваш :) http://browsershots.org/

0
ответ дан 30 November 2019 в 14:17
поделиться
Другие вопросы по тегам:

Похожие вопросы: