Я видел этот пост (это действительно полезно: Сделайте снимок экрана через python script. [Linux]) о снятии скриншота с python. Он работает хорошо, но я хотел бы иметь такое же поведение, как gnome-screenshot: возможность выбирать между:
Есть ли способ сделать это в python или, в конечном итоге, использовать приложение gnome-screenshot для его выполнения, а затем получить файл?
Я попытался найти идеальную командную строку для запуска gnome-screenshot, не спрашивая, где сохранить скриншот после того, как задал путь при вызове, но я не могу его найти.
Спасибо за вашу помощь!
Если вы не ограничены использованием специально созданного скриншота gnome, команда ImageMagick import
может сохранять непосредственно в файл без интерактивного приглашения.
Подробнее см. здесь: http://www.imagemagick.org/script/import.php
В дополнение к интерфейсу командной строки существует также Python API.
У меня есть проект оболочки (pyscreenshot) для scrot, imagemagick, pyqt, wx и pygtk. Если у вас есть один из них, вы можете использовать его. Захват активного окна отсутствует.
Установка:
easy_install pyscreenshot
Пример:
import pyscreenshot as ImageGrab
# fullscreen
im=ImageGrab.grab()
im.show()
# part of the screen
im=ImageGrab.grab(bbox=(10,10,500,500))
im.show()
# to file
ImageGrab.grab_to_file('im.png')
Используя gnome-panel-screenshot, вы можете выбрать только окно:
Я нашел другую страницу, в которой есть много разных способов сделать снимок экрана из командной строки:
http://tips.webdesign10.com/how-to-take-a-screenshot-on-ubuntu-linux
Большинство этих быстрых советов на этой странице не показывают, как сузить его до окна или области, но в результате их более подробного анализа будут показаны необходимые параметры командной строки.