Python을 사용하여 스크린샷 찍기
- Pyautogui 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
- 베개 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
- Pyscreenshot 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
- 결론
Python 프로그래밍 언어를 사용하면 간단한 모듈과 짧고 정확한 코드를 사용하여 다양한 작업을 수행할 수 있습니다. Python의 도움으로 스크린샷을 찍는 것이 그러한 작업 중 하나입니다.
Python은 다양한 작업을 수행할 수 있는 많은 모듈을 제공합니다. Python과 해당 라이브러리를 사용하여 스크린샷을 찍는 방법에는 여러 가지가 있습니다.
이 문서에서는 Python을 사용하여 스크린샷을 찍기 위해 따라야 하는 모든 단계를 안내합니다. 의 시작하자!
Pyautogui 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
첫 번째 접근 방식은 Python이 제공하는 pyauotgui
모듈을 사용합니다. 터미널 창에서 다음 명령을 사용하여 이 모듈을 설치할 수 있습니다.
pip install pyautogui
pyautogui
모듈은 전체 화면을 캡처하는 데 도움이 되는 screenshot()
기능을 사용합니다. 나중에 save()
기능을 사용하여 이미지를 저장하거나 imwrite()
기능을 NumPy
및 OpenCV
모듈과 함께 사용하여 이미지를 디스크에 쓸 수 있습니다.
이 두 가지 방법을 자세히 살펴보십시오.
Pyautogui 모듈에서 save()
기능을 사용하여 Python을 사용하여 스크린샷 찍기
pyautogui
모듈을 설치한 후 스크린샷을 찍는 가장 간단한 방법은 screenshot()
함수와 save()
함수를 사용하는 것입니다. 다음은 이러한 함수를 사용하는 예제 코드입니다.
예제 코드:
import pyautogui
demo_image = pyautogui.screenshot()
demo_image.save("demo_one.jpg")
먼저 pyautogui
모듈을 가져옵니다. 그런 다음 화면의 이미지를 캡처하는 screenshot()
함수를 호출합니다.
또한 코드의 마지막 줄에서 이미지를 저장하려는 이름과 함께 save()
함수를 사용합니다. 이 경우 캡처된 이미지는 demo_one.jpg
파일 이름으로 찾을 수 있습니다.
아래는 출력으로 얻은 이미지입니다. Jupyter Notebook 또는 Python과 동일한 디렉터리에서 이 이미지를 찾을 수 있습니다.
를 사용하는 Python 스크린샷
이미지 캡처에 약간의 지연이 필요한 경우 time
모듈의 sleep()
기능을 사용할 수 있습니다.
Pyautogui와 함께 Numpy 및 Opencv 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
두 번째 방법은 pyautogui
와 함께 두 개의 모듈을 더 사용하는 것입니다. 이들은 NumPy
및 OpenCV
입니다. 우리는 save()
함수를 사용하여 첫 번째 방법으로 이미지를 저장했습니다.
그러나 여기에서는 이 두 모듈을 사용하여 스크린샷을 찍고 저장합니다.
터미널에 다음 명령을 작성하여 Numpy
및 OpenCV
를 설치합니다.
pip install numpy
pip install opencv-python
다음은 모든 모듈이 설치된 후 사용해야 하는 코드입니다.
예제 코드:
# import the required modules
import numpy as x
import cv2
import pyautogui
# use pyautogui to take screenshot
demo_image = pyautogui.screenshot()
# use opencv and numpy to manipulate image
demo_image = cv2.cvtColor(x.array(demo_image), cv2.COLOR_RGB2BGR)
# save the image using opencv
cv2.imwrite("demo_two.png", demo_image)
먼저 필요한 모듈을 가져온 다음 screenshot()
함수를 사용하여 화면을 캡처했습니다. 그런 다음 이미지를 NumPy
배열로 변환하고 색상 순서를 RGB에서 BGR로 변경했습니다.
이는 OpenCV
가 이미지를 읽을 때 색상 순서가 기본 RGB가 아닌 BGR이어야 하기 때문에 수행됩니다. 마지막으로 imwrite()
함수를 사용하여 이미지를 디스크에 씁니다.
이것이 출력 이미지의 모습입니다.
출력:
이것은 pyautogui
모듈을 사용하여 Python에서 스크린샷을 찍는 방법에 관한 것입니다. 이제 동일한 작업을 수행하는 다음 방법으로 이동합니다.
pyautogui
모듈에 대한 자세한 내용은 이 문서를 참조하세요.
베개 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
pyautogui
모듈을 사용하면 기본적으로 전체 화면을 캡처합니다. 그러나 화면의 일부를 캡처해야 하는 경우 Pillow
모듈을 사용할 수 있습니다.
이 모듈은 ImageGrab
이라는 또 다른 하위 모듈을 사용하여 캡처하려는 화면의 원하는 영역 좌표를 설정할 수 있습니다. grab()
함수를 사용하여 이러한 좌표를 지정합니다.
이 접근법에 대한 코드는 다음과 같습니다.
예제 코드:
from PIL import ImageGrab
ss_coordinates = (200, 200, 600, 600)
demo_image = ImageGrab.grab(ss_coordinates)
demo_image.save("demo_three.jpg")
먼저 Pillow
모듈과 ImageGrab
하위 모듈을 가져왔습니다. 그런 다음 캡처하려는 화면의 좌표를 설정합니다.
또한 grab()
함수를 사용하여 이 좌표를 이 함수에 전달했습니다. 그런 다음 save()
메서드를 사용하여 캡처한 이미지를 저장합니다.
이것은 우리가 얻은 스크린샷입니다.
출력:
기본적으로 이것은 파이썬에서 스크린샷을 찍는 방법입니다. 즉, 좌표를 설정하는 것입니다. Pillow
모듈에 대한 자세한 내용은 이 문서를 참조하십시오.
Pyscreenshot 모듈을 사용하여 Python을 사용하여 스크린샷 찍기
Python은 스크린샷을 찍는 유일한 작업을 위해 pyscreenshot
이라는 이 모듈을 제공합니다. 이 모듈을 설치하려면 터미널에서 다음 명령을 사용하십시오.
pip install pyscreenshot
모듈이 설치되면 이 코드를 사용하여 전체 화면의 스크린샷을 찍습니다.
예제 코드:
import pyscreenshot
image_demo = pyscreenshot.grab()
image_demo.save("demo_four.png")
먼저 pyscreenshot
모듈을 가져온 다음 grab()
함수를 사용하여 화면을 캡처했습니다. 마지막으로 save()
함수를 사용하여 이미지를 저장했습니다.
다음은 출력으로 얻은 이미지입니다.
출력:
이 모듈을 사용하여 화면의 일부를 캡처할 수도 있습니다. 필요한 좌표를 튜플로 grab()
함수에 전달하기만 하면 됩니다.
다음은 특정 화면 부분의 스크린샷을 찍는 코드입니다.
예제 코드:
import pyscreenshot
image_demo = pyscreenshot.grab(bbox=(100, 100, 500, 500))
image_demo.save("demo_five.png")
코드의 두 번째 줄에 캡처하려는 화면 부분의 좌표를 전달했습니다. 나머지 코드는 이전 코드와 동일하게 작동합니다.
다음은 캡처한 이미지입니다.
출력:
이 모듈인 pyscreenshot
은 더 이상 많이 사용되지 않으며 Python에서 스크린샷을 찍기 위해 논의한 처음 두 가지 방법을 사용하는 것이 좋습니다. 이것은 Python에서 스크린샷을 찍는 방법에 관한 것입니다.
결론
이 기사에서는 Python 프로그래밍 언어를 사용하여 스크린샷을 찍는 방법에 대해 설명했습니다. 우리는 pyautogui
모듈을 save()
함수와 NumPy
및 OpenCV
와 같은 다른 모듈과 함께 사용하는 방법을 보았습니다.
또한 Python의 Pillow
모듈을 사용하여 화면의 일부를 캡처하는 방법도 배웠습니다. 또한 pyscreenshot
모듈을 사용하여 전체 화면과 해당 부분을 캡처하는 방법을 확인했습니다.