현재 내 컴퓨터에서 실행되고 있는 프로그램의 창의 제목을 확인하는 코드입니다.
아래 그림과 같이 그림판을 실행시키면
창의 제목이 "제목 없음 - 그림판"으로 나타납니다.
이렇게 해당 프로그램의 창의 제목을 확인하는 코드입니다.
준 비 사 항
pygetwindow 설치
pip install pygetwindow
파이썬에서 pygetwindow 라이브러리를 사용하면
현재 시스템에서 실행 중인 창의 제목을 쉽게 얻을 수 있습니다.
이것을 활용하여 특정 프로그램이 실행 중인지 확인하거나, 창을 찾아 조작하는 등 작업이 가능합니다.
전 체 코 드
import pygetwindow as gw
def get_active_windows_titles():
all_windows = gw.getAllWindows()
active_windows_titles = []
for window in all_windows:
if not window.isMinimized and window.title.strip():
active_windows_titles.append(window.title)
return active_windows_titles
active_titles = get_active_windows_titles()
if active_titles:
for title in active_titles:
print(f"활성화된 창의 제목: {title}")
else:
print("활성화된 창이 없거나, 제목이 비어있는 창은 없습니다.")
코 드 설 명
all_windows = gw.getAllWindows()
getAllwindows() 메서드를 호출하여 현재 시스템에 있는 모든 창을 가지고 옵니다.
active_windows_titles = []
for window in all_windows:
if not window.isMinimized and window.title.strip():
active_windows_titles.append(window.title)
활성화된 창들의 제목을 저장할 빈 리스트를 만들어줍니다.
저는 필요에 의해 창이 최소화 되어있는 지 확인을 해야 했기에
window.isMinimized 코드를 조건으로 넣어 최소화 된 창은 리스트에 넣지 않았습니다.
즉, 최소화 되어 있지 않고 창의 제목이 공백이 아닌 활성화된 창들을 리스트에 넣는 코드입니다.
return active_windows_titles
그 다음 활성화된 창들의 제목이 담긴 리스트를 반환합니다.
active_titles = get_active_windows_titles()
if active_titles:
for title in active_titles:
print(f"활성화된 창의 제목: {title}")
else:
print("활성화된 창이 없거나, 제목이 비어있는 창은 없습니다.")
함수를 호출하여 창들의 제목을 가지고 오고
각 창의 제목을 출력합니다.
실 행 결 과
현재 글을 쓰고 있기 때문에 Edge 브라우저와
vscode가 실행이 되고 있습니다.
하지만 windows 입력 환경, NVIDIA GeForce Overlay, Program Manager
이 세개는 왜 나타나는지는 모르겠습니다.
어디선가 실행이 되고 있는 것 같은데.....
여기를 방문하시면 더 많은 파이썬 관련 자료를 확인할 수 있습니다.
'파이썬(Python)' 카테고리의 다른 글
[ Basic ] 파이썬에서 변수의 값 교환하기, 변수의 교환 (0) | 2024.09.01 |
---|---|
[ Tkinter ] 버튼으로 비밀번호(Password) 보이기, 숨기기 기능 구현 (0) | 2024.08.30 |
[ Tkinter ] 그리드(grid)의 너비와 높이 조정하기 (0) | 2024.08.25 |
파이썬(Python)으로 현재 활성화된 엑셀의 워크북 및 시트 이름 확인하기 (0) | 2024.08.25 |
[ psutil ] 내 컴퓨터에서 특정 프로그램이 실행되고 있는 지 확인하기, psutil 라이브러리 (0) | 2024.08.23 |