반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- GIT
- Google Spreadsheet
- Github
- Excel
- array
- PANDAS
- 파이썬
- django
- numpy
- matplotlib
- c#
- list
- PostgreSQL
- math
- Python
- gas
- Java
- Kotlin
- string
- Tkinter
- hive
- PySpark
- Google Excel
- Apache
- google apps script
- SQL
- Redshift
- dataframe
- Mac
Archives
- Today
- Total
달나라 노트
Python PIL : 화면 캡쳐하기 (screen capture with python) 본문
Python/Python ETC
Python PIL : 화면 캡쳐하기 (screen capture with python)
CosmosProject 2024. 11. 5. 19:43728x90
반응형
Python에서는 PIL module을 이용하여 화면을 캡쳐할 수 있습니다.
from PIL import ImageGrab
# capture entire screen
img = ImageGrab.grab()
img.show()
위처럼 하면 화면 전체를 캡쳐할 수 있습니다.
from PIL import ImageGrab
# capture top-left rectangle with size 638px wide by 312px tall
img = ImageGrab.grab(bbox=(0, 0, 538, 312))
img.show()
위처럼 화면 캡쳐 영역의 크기를 조절할 수도 있습니다.
캡쳐는 직사각형으로 할 수 있으며, bbox에 담겨진 4개의 인자는 각각 직사각형의 꼭지점 좌표를 의미합니다.
bbox=(x1, y1, x2, y2)
가장 처음 2개 인자인 x1, y1은 캡쳐할 직사각형 영역의 좌측 상단 꼭지점 좌표를 나타냅니다.
마지막 2개 인자인 x2, y2는 캡쳐할 직사각형 영역의 우측 하단 꼭지점 좌표를 나타냅니다.
이렇게 2개의 점을 정의하면 직사각형을 그릴 수 있죠.
좌표는 컴퓨터 화면의 왼쪽 맨 위가 (0, 0)이며
오른쪽으로 갈수록 x좌표가 커지며,
아래쪽으로 갈수록 y좌표가 커집니다.
from PIL import ImageGrab
# capture entire screen and save as png image file
img = ImageGrab.grab()
img.save('sample_capture.png')
PIL 객체의 save() method를 이용하여 이미지를 파일로 저장할 수도 있습니다.
728x90
반응형
'Python > Python ETC' 카테고리의 다른 글
Python pynput : keyboard (python으로 키보드 컨트롤하기, Python으로 keyboard control) (0) | 2024.11.05 |
---|---|
Python pynput : mouse (python으로 마우스 컨트롤하기, Python으로 mouse control) (1) | 2024.11.05 |
PIL을 이용하여 이미지 위에 글씨 쓰기 (2) | 2024.03.07 |
ImportError: module 'cv2.dnn' has no attribute 'DictValue' error (0) | 2024.03.07 |
PyCharm에서 환경변수 설정, Interpreter별 환경변수 설정, Custom library 경로 설정 (2) | 2024.02.08 |
Comments