Получение скриншота из скрипта Python, выбрав область

1

Я видел этот пост (это действительно полезно: Сделайте снимок экрана через python script. [Linux]) о снятии скриншота с python. Он работает хорошо, но я хотел бы иметь такое же поведение, как gnome-screenshot: возможность выбирать между:

  • Захват всего рабочего стола
  • Захват активного окна
  • Захват области

Есть ли способ сделать это в python или, в конечном итоге, использовать приложение gnome-screenshot для его выполнения, а затем получить файл?

Я попытался найти идеальную командную строку для запуска gnome-screenshot, не спрашивая, где сохранить скриншот после того, как задал путь при вызове, но я не могу его найти.

Спасибо за вашу помощь!

Теги:
screenshot
gnome

3 ответа

1
Лучший ответ

Если вы не ограничены использованием специально созданного скриншота gnome, команда ImageMagick import может сохранять непосредственно в файл без интерактивного приглашения.

Подробнее см. здесь: http://www.imagemagick.org/script/import.php

В дополнение к интерфейсу командной строки существует также Python API.

1

У меня есть проект оболочки (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')
1

Используя gnome-panel-screenshot, вы можете выбрать только окно:

http://manpages.unixforum.co.uk/man-pages/unix/solaris-10-11_06/1/gnome-panel-screenshot-man-page.html

Я нашел другую страницу, в которой есть много разных способов сделать снимок экрана из командной строки:

http://tips.webdesign10.com/how-to-take-a-screenshot-on-ubuntu-linux

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню