HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 26.06.2021, 13:02
laiser
Участник форума
Регистрация: 21.12.2013
Сообщений: 181
С нами: 6522707

Репутация: 83
По умолчанию

Всем привет, необходимо сделать скриншот активного окна.

Использую библиотеку pyautogui, там есть функция "pyautogui.screenshot()" которая скринит весь экран.

Есть доп. аргумент region, который принимает координаты.

Я понимаю, что нужно ввести координа и он заскринит нужную область, но Если приложение находится в другом месте или размер у окна другой.

Может какую-то другую библиотеку юзать? api win32 не подходит, так как нужно и для линукс.

Подскажите пожалуйста, как мне сделать скрин активного экрана с помощью питона?
 
Ответить с цитированием

  #2  
Старый 13.08.2021, 00:17
pomidorq
Участник форума
Регистрация: 17.04.2020
Сообщений: 184
С нами: 3197792

Репутация: 83
По умолчанию

Python:





Код:
import
pyautogui
import
win32gui
def
screenshot
(
window_title
=
None
)
:
if
window_title
:
title_exists
=
win32gui
.
FindWindow
(
None
,
window_title
)
if
title_exists
:
win32gui
.
SetForegroundWindow
(
title_exists
)
x
,
y
,
x1
,
y1
=
win32gui
.
GetClientRect
(
title_exists
)
x
,
y
=
win32gui
.
ClientToScreen
(
title_exists
,
(
x
,
y
)
)
x1
,
y1
=
win32gui
.
ClientToScreen
(
title_exists
,
(
x1
-
x
,
y1
-
y
)
)
im
=
pyautogui
.
screenshot
(
region
=
(
x
,
y
,
x1
,
y1
)
)
return
im
else
:
print
(
'Не существует окна с таким именем.'
)
else
:
im
=
pyautogui
.
screenshot
(
)
return
im
try
:
im
=
screenshot
(
'San Andreas Multiplayer 0.3.7'
)
#Пишешь название окна в точности до символа.
im
.
show
(
)
except
:
print
(
'Не существует окна с таким именем.'
)
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема

Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.