적용 사항
- Python + Selenium + Requests 를 이용한 업무 자동화
:: 오버헤드가 큰 작업은 requests로 웹 요청 보내서 처리함.
- PyQT5 + QT Designer 을 통해 GUI 작업 완료된 것으로 터미널에서 실행하지 않고 간편히 버튼 몇개만으로 업무 자동화 가능
- 쓰레드 처리로 프로그램 동작 중에 GUI 업데이트 가능. 응답없음 뜨지 않고 프로그램이 뻗지 않음.
- GUI는 정보 유출 문제로 공개하지 않음.
(사실 이게 제일 중요한거 아닌가..? ㅎㅎ;;)
아버지 의뢰작으로 만든 파이썬을 통한 업무 자동화 입니다.
파이썬으로 GUI는 난생 처음 작업해봤는데 형식 조금만 틀려도 튕겨버리고..
특히 동적 타입언어라서 검사가 느슨하다보니 인터프리터 언어 특성상 컴파일 언어 처럼 오류가 컴파일에 잡히지 않고 일단 실행을 해서 디버깅을 하다가 문제가 되는 부분에서 오류를 찾아야 합니다.
컴파일 언어에 비해 인터프리터 언어가 갖는 장점이 컴파일 시간이 없고 그때 그때 바로 실행할 수 있다.. 인데 오히려 Gui 작업을 할때는 컴파일 언어가 그리워지더군요..
(왜 JS가 있는데도 TypeScript가 그렇게 인기있는지 깨닫게 되는 하루였습니다.)
그래도 C#으로 작업할때는 GUI를 간편하게 만들 수 있다는점 빼고는 온갖 타입 오류에 암걸리는점이 많았는데
PyQt로 개발하면 GUI 개발은 조금 불편할지 몰라도 파이썬의 문법을 사용할 수 있다는게 너무 큰 이점이였습니다.
'Can use Python' 이게 너무 큰 장점으로 다가오더군요.
게다가 qt designer 로 처음 개발을 할때는 윈폼 개발할때보다 훨씬 디자인이 구리다고 생각했는데
확인해보니 CSS를 자유롭게 적용할 수 있어서 잘만 만든다면 윈폼 + 폼스킨 조합보다도
훨씬 이쁜 GUI를 만들 수 있습니다.
솔직히 관련 레퍼런스로 많이 부족하고 멘땅에 헤딩하는게 많았으나 그래도 개발은 정말 빠르게 할 수 있었습니다.
아마 조금만 더 숙련을 한다면 괜찮은 프로그램을 공장장처럼 뽑아낼 수 있지 않을까 기대해봅니다.
'프로그래밍 > Python' 카테고리의 다른 글
[PyQT] QTableWidget Item에 이미지와 텍스트 동시에 표시되게 하기 (0) | 2022.01.20 |
---|---|
[PyQT] QTableWidget Column 숫자도 정렬되게 하기 (4) | 2022.01.20 |
[Python] Selenium 스크롤 클릭해서 수동으로 내리기 (0) | 2022.01.16 |
[Python] PyQt5 학습 정보, 쓰레드 작업 등 정보 모음 (0) | 2022.01.14 |
시놀로지 NAS + JupyterLab 원격 IDE 환경 (0) | 2022.01.04 |