python
-
python pyQt5 모니터 관련 함수python/기타 2021. 10. 22. 11:06
from PyQt5.QtWidgets import * app = QApplication([]) # 모니터 갯수 반환 app.desktop().screenNumber() # 주 모니터 선택 screen = app.primaryScreen() # 모니터 이름 (\\.\DISPLAY1) print(screen.name()) # 해상도 ( 작업표시줄을 제외한 영역을 반환할 경우 아래 함수 사용 ) print(screen.geometry()) print(screen.availableGeometry()) # 다중 모니터 해상도 구하기 monitorCount = app.desktop().screenCount() for i in range(monitorCount): print(app.desktop().available..
-
python 으로 window service 관리python/기타 2021. 10. 6. 17:08
최근 윈도우 웹서버에서 apache 서비스가 자꾸 죽는 경우가 생겨서 python 으로 window 서비스를 정지, 시작, 재시작 프로그램을 작성하였습니다. 필요 모듈로는 pywin32, requests pip install pywin32 pip install requests 을 이용해서 설치합니다. import requests import win32serviceutil r = requests.get('http://www.aaa.com', timeout=10) # 응답이 없거나 200 이 아니면 재시작 if r.status_code != 200 : try: win32serviceutil.QueryServiceStatus(serviceName) except Exception as e: print("그런 서..
-
stream deck 만들기 - 3python/stream deck 2021. 10. 5. 13:19
지난 글에서 기본 화면은 만들었으니 이번에는 설정 파일 제작과 키보드 이벤트 후킹을 해보도록 하겠습니다. 일단 설정 파일입니다. 프로젝트 아래에 resource 라는 폴더, icon 이라는 폴더를 하나 추가 합니다. resource 에는 설정 파일을 넣고 , icon 에는 키에 맞는 이미지를( 60px X 60px ) 제작해서 넣어주도록 합니다. 설정파일은 config.ini 라고 만들고 내용은 다음과 같습니다. { "1":{ "key" : "f13", "image":"key1.png", "type":"text", "content":"안녕하세요.!!!" }, "2":{ "key" : "f14", "image":"key2.png", "type":"url", "content":"[https://www.dau..
-
stream deck 만들기 - 2python/stream deck 2021. 9. 28. 18:02
1편에 이어서 기본 레이아웃을 만들어 보도록 하겠습니다. 개발 환경은 다음과 같습니다. python 3.7 , pycharm 입니다. 가급적 python 3.7 이상 버전에서 실행하시기 바랍니다. pip install pyqt5 하셔셔 pyqt5 버전을 설치합니다. import sys import os from PyQt5.QtWidgets import * from PyQt5.QtGui import * from PyQt5.QtCore import Qt BASE_DIR = os.path.dirname(os.path.abspath(__file__)) class StreamDeck(QWidget): def __init__(self): super().__init__() self.initUI() def initUI..
-
pyinstaller 로 exe 만들 때 관리자 권한으로 실행하기python/pyinstaller 2021. 9. 28. 14:26
python 으로 프로그램을 만들면 exe (실행파일) 형태로 배포할 경우가 있다. py2exe 를 주로 썼는데 setup 파일 만드는게 불편했는데 pyinstaller 를 활용하면 쉽게 만들 수 있다. pip3 install pyinstaller 로 pyinstaller 설치 후 cmd 창에서 pyinstaller -w test.py 를 입력하면 프로젝트 폴더내에 dist 라는 폴더가 생성되고 test.exe 파일과 부가 파일들이 생성되어 있는 것을 확인 할 수 있다. 만일 관리자 권한으로 실행이 필요한 경우 ( 설정 파일 쓰기 같은 경우 위 방식으로 하면 permission deny 가 날수 있다. ) pyinstaller -w --uac-admin test.py 를 하면 관리자 권한으로 실행되는 e..
-
stream deck 만들기 - 1python/stream deck 2021. 9. 27. 15:48
엘가토 스트림 덱이라는 제품을 본 적이 있었다. 유튜버에게는 필수라는 아이템이라고 하길래 관심 있게 보았더니 단축키를 버튼에 등록해 놓고 클릭시 자동으로 입력되는 방식이었다. 더 매력적인 건 버튼에 LCD 가 들어가 있어서 기능에 적합한 이미지를 만들어서 등록이 가능하다는 것이었다. 그런데 문제는 6개 버튼이 거의 10만원대 버튼이 많아질수록 가격도 2배로 상승한다. 대체품이 있을까 해서 알리를 찾아보던중 아래와 같은 제품을 발견했다. 가격은 12달러 키 갯수도 다양하게 있었다. 얼마 전에는 블루투스 버전도 있어서 주문해 놓은 상태... 기본은 각 버튼에 숫자 1 ~ 6 까지 할당되어 있으나 판매자가 제공하는 프로그램으로 다른 키를 할당할 수 있다. 제공되는 프로그램으도 엘가토 제품처럼 만들 수는 있으나..
-
flask daemon 으로 실행python/flask 2021. 9. 27. 13:59
flask 를 기본적으로 실행할 경우 from flask import Flask app = Flask(__name__) @app.route('/') def hello\_world(): return 'Hello World!' if __name__ == '__main__': app.run() 이렇게 하면 서버 모드로 실행되어 서버 응답만 받을 수 있는 상태로 실행되어진다. 다른 방법으로 데몬으로 실행하게 되면 백그라운드로 실행된다. from threading import Thread from flask import Flask app = Flask(__name__) kwargs = {'host': '0.0.0.0', 'port': 'your_port', 'threaded': True, 'use_reloader..