반응형

SW 배움터/파이썬 업무 자동화 17

엑셀 그림 데이터 파일로 데이터 입력하기

엑셀 데이터를 종이나 이미지 파일로 받을 때가 있다. 이 데이터를 다시 엑셀 파일에 쳐 넣으려고 하면 상당히 난감하고 시간을 많이 잡아먹는 일이 될 것이다. 그러나 이제는 그럴 필요가 없다. 요즘 나오는 엑셀에는 '그림 데이터'라는 항목이 있어서 이미지 데이터를 쉽게 엑셀 파일에 추가 할 수 있다. 아래와 같은 데이터를 종이나 사진파일로 받았다고 하자. 그러면 종이에 적힌 데이터는 휴대폰으로 사진을 찍고, 이미지 파일은 그대로 사용하면 된다. 1. MS 온라인 오피스 무료 사이트에 들어가기 브라우저 주소창에 "https://www.microsoft.com/ko-kr/microsoft-365/free-office-online-for-the-web"라고 입력한다. 이 사이트는 웹에서 Word, Excel, ..

파이썬 자동화(매크로) 프로그램 제작 도구들

이번 시간에는 파이썬 프로그램으로 자동화프로그램을 만드는 만능 블록들을 소개한다. 이 세트들만 잘 조합하면 어떤 자동화 프로그램도 만들 수 있다. 자동화 프로그램이라고는 하지만 실제로는 매크로 프로그램이다. 단순 반복적인 업무를 매크로를 이용해 반복시키면 그게 바로 자동화 프로그램 아닌가? 단순 반복적인 일에서 인간이 사용하는 컴퓨터의 조작을 잘 보자. 특정 위치를 클릭하고, 그 부분의 단어나 내용을 선택하고, 복사하고, 이동하고, 또 특정 위치를 클릭하고, 붙여넣는 작업을 반복 할 것이다. 중간에 자르기나 삽입하는 조작도 있을 수 있는데 그것도 포함할 수 있다. 윈도우 컴퓨터에서 마우스나 커스를 조작하려면 먼저 pyautogui 라이브러리를 설치해야 한다. VS code나 IDE 편집프로그램에서 터미널..

파이썬 업무 자동화 프로그램 : 마우스 커서의 위치 알아내기

파이썬으로 업무 자동화 프로그램을 만들려고 하면 컴퓨터 모니터에서 현재 커서가 위치하고 있는 값이나 또는 특정 아이콘 혹은 버튼의 위치를 알아야 하는 경우가 있다. 이때 커서가 위치한 현재 모니터상의 위치를 표시하는 방법을 알아보자. 프로그램 자체는 의외로 간단하다. pyautogui라는 라이브러리를 불러와서 아래와 같은 코드를 작성한다. 이 프로그램을 실행시키기 위해서는 먼저 pyautogui라는 라이브러리를 install 해야 한다. Vs code의 상단 터미널 메뉴에서 '새 터미널'을 하나 열고 새 터미널에 pip install pyautogui라고 입력한다. install이 끝나고 나면 성공적으로 install이 끝났다는 메시지가 나타난다. 이제 Vs code 우측의 삼각형 실행 버튼을 눌러 프로..

윈도우에서 자막 입력 자동화 프로그램 만들기

윈도우에서도 자막을 자동으로 입력하는 자동화 프로그램을 만들 수 있다. 파이썬으로 Gui 프로그램을 짜고 이 Gui 프로그램을 윈도우 입력 자동화 파일과 연동시켜 자막 입력 자동화 프로그램을 만들었다. 아래와 같이 파이썬으로 Gui 프로그램을 만든다. Gui 프로그램은 오직 자막 입력을 위해 간단한 불러오기, 저장, 간단한 편집 등의 기능만 있고 이 Gui 프로그램에서 바로 실행까지 하기 위해 'Run' 메뉴를 하나 더 추가했다. Gui 프로그램를 실행시키면 아래와 같은 간단한 에디터가 나타난다. 자막을 입력하고 'ctrl + s'나 File 에 들어가서 'Save'를 누르면 지정된 곳에 내용이 저장된다. 'Run' 메뉴안에 ''실행" 항목을 따로 두었다. "실행" 을 크릭하면 입력한 내용이 한줄씩 화면..

윈도우와 맥컴퓨터에서 코딩으로 실행파일 작동하기

윈도우와 맥컴퓨터는 서로 다른 OS를 사용하기 때문에 당연한 얘기지만 실행파일을 조작하는 법 자체도 아예 다르다. 윈도우에서는 실행파일의 확장자가 .exe 로 되지만 맥 컴퓨터에서는 실행파일의 확장자가 아예 없다. 따라서 코딩으로 실행파일을 직접 조작하는 방법도 다른데 이번 시간에는 그 방법에 대해서 알아보자. 아래 그림에서 보다시피 맥컴퓨터에서는 실행파일의 확장자가 아예 없다. 다른 파일들은 확장자가 있는데 실행파일의 확장자가 없다는 것이 정말 이상하다. 윈도우의 경우에는 실행파일에 .exe 라는 확장자가 붙어있다. 이제 위의 실행파일을 파이썬에서 코드로 조작하는 방법을 알아보자. 맥에서는 아래와 같이 run_file에 path와 함께 확장자가 없는 실행파일 명을 그대로 넣어 준다. 윈도우의 경우에는 ..

맥 컴퓨터에서 파이썬 자동화를 위한 보안 해제법

맥 컴퓨터에서 VS code로 파이썬 코드를 짜서 업무 자동화를 시도 하려고 하면 맥 컴퓨터의 보안 때문에 제동이 걸리게 된다. 따라서 맥 컴퓨터에서 파이썬 자동화를 하기 위해서는 맥의 보안을 해제하는 방법을 알아야 한다. 필자도 처음에는 마우스와 키보드에 걸려있는 보안 사항을 해제 해야 하는 것이 아닌가 하고 몇가지를 시도 했었다. 하지만 나중에 알고 보니 마우스와 키보드의 보안 사항과는 상관이 없고 자동화툴에 대한 접근을 허용해 주는 되는 것이었다. 먼저 바탕화면 하단의 작업 표시줄에서 '시스템 환경설정'을 클릭한다. 이번에 하려는작업은 맥 컴퓨터의 보안과 관련된 사항이므로 '보안 및 개인 정보 보호'를 클릭한다. 개인 정보 보호 탭을 클릭해 보면 좌측에 여러가지 사항이 뜨는데 '자동화'를 클릭해 보..

파이썬 실행 파일에 이모티콘 넣기

파이썬 실행 파일에 이모티콘을 넣고 바탕화면에 끄집어 내서 바탕화면에서 바로 실행 시키는 것 까지 알아보자. 일단 파이썬 실행 파일을 만들려면 다음과 같은 몇가지 준비 과정이 필요하다. 1.pyinstaller 설치 파이썬 실행 파일을 만들려면 pyinstaller 라이브러리가 필요하다. VS code나 다른 편집기의 터미널에서 다음과 같은 명령으로 설치 한다. : >pip install pyinstaller 2.-w나 -F를 이용해서 실행파일 추출하는 법 1)기본적인 파이썬 실행 파일 추출 법 : >pyinstaller 파이썬 파일명.py 기본실행을 사용하면 폴더에 많은 파일들이 생성되고 실행시에 도스 실행창이 나타난다. 보기에 좋지가 않다. 2)-w(소문자이다) 옵션을 사용하면 도스 실행창이 열리는 ..

ChatGPT와 같이 하는 맥 컴퓨터 프로 프리젠터 입력 자동화

맥 컴퓨터에서는 프리젠테이션용 도구로 프로 프리젠터를 많이 사용하는데 필자가 한번 입력시스템을 사용해 본 결과 도무지 UI가 너무 불친절해서 사용하기가 정말 어려웠다. 그래서 ChatGPT의 도움을 받아 직접 프로 프리젠터 입력 자동화 프로그램을 개발해 보았다. 필자가 프로 프리젠터 입력 자동화 프로그램을 개발한 환경은 교회에서 수십개의 성경 구절을 입력하고 그 구절을 화면에 띄우는 상황이다. 성경 1구절을 입력하기 위해서는 성경 이름과 장절을 입력해서 성경 구절을 찾고 그 찾은 구절을 쇼화면으로 옮겨서 다시 넣어주어야 하는 아주 복잡한 상황이다. 클릭과 복사 붙여 넣기 과정을 10여 차례 이상을 해야 한 과정이 끝나는 지난한 작업이었다. 입력해야 하는 성경 구절이 몇개 되지 않는 다면 해 볼만 하겠지만..

chatGPT를 이용한 엑셀 자동화1 탄.

chatGPT를 이용한 다양한 시도가 이루어지고 있다. 필자는 엑셀 자동화 1탄으로 chatGPT의 도움을 받아 엑셀에 있는 데이터를 그대로 읽어서 다른 엑셀 파일이나 또는 다른 프로그램의 한 부분에 그 데이터를 삽입하고 다음 처리를 하는 코드를 만들어 보겠다. 먼저 chatGPT에게 다음과 같은 질문을 해서 파이썬 코드를 얻는다. 이 글을 읽으시는 분이라면 chatGPT에게 본인의 상황에 맞는 질문을 구체적으로 해서 답을 얻기 바란다. 질문이 조금 이상했는지 또 다음 답변도 이어졌다. chatGPT가 알려주는 코드를 토대로 필자가 조금 수정을 해서 아래와 같은 코드를 입력하고 수정을 요청했다. 한글 입력이 되지 않고 영어만 입력이 되는 문제가 있어 한글을 읽어와서 한글을 그대로 출력해 주는 코드로 수정..

파이썬으로 초간단 웹앱 제작하기

이번 시간에는 파이썬을 이용해서 1~2분 안에 웹앱을 제작하는 방법을 알아보겠다. 파이썬 파일을 하나 만들고 터미널에서 웹앱 제작 lib인 gradio를 설치하기 위해 'pip install gradio'을 입력한다. 이상이 없이 설치가 완료되면 에러없이 커서가 깜빡인다. 만약 설치가 잘 되지 않는다면 파이썬의 path를 확인해 보거나 pip 업그레이드를 시행해 보는등 몇가지 방법을 동원해서 설치해 보기 바란다. 파이썬 코드를 입력한다. gradio 라이브러리를 import하고 wordBox를 inputText 형식으로 정의한다. 그러면 'hello'란 글자와 함께 입력한 글자가 리턴되는 코드이다. 코드 자체는 별 난해한 부분 없이 잘 읽히는 내용이다. 코드를 다 입력했으면 우상단의 삼각형 버튼을 눌러 ..

VS code 파이썬 상태 표시줄 고급팁

1. VS code 파이썬 상태 표시줄의 python(확장) 항목 이용법 VS code로 파이썬 프로그램을 작성할 때 어떤 lib를 pip로 import 시킨 상태임에도 불구하고 아래 그림처럼 에러가 표시되는 경우가 있다. 이럴때는 보통 파이썬 확장항목이 잘못 설정되어 있기 때문이다. 하단부의 파란색띠로 표시된 부분이 파이썬 상태 표시줄이다. 상태 표시줄에 'python(확장)' 항목이 없는 경우에는 이 상태 표시줄 위에 마우스를 가져다 두고 우클릭을 한다. 상태 표시줄에 나타낼 수 있는 여러 항목이 보이는데 이 중 'python(확장)'을 선택한다. 하단부에 '3.9.12(conda)'라고 표시된 부분이 새로 나타났다. 이 부분위에 마우스를 가져가서 클릭해 보자. 상단에 '인터프리트 선택' 메뉴창이 열..

파이썬 웹 크롤링 스킬1

파이썬 웹 크롤링을 할때 매번 인터넷 브라우저 뜨면 코딩하는 입장에서 불편할 때가 있다. 이때 인터넷 브라우저를 잠시 뜨지 않게 하는 방법이 있다. 지금부터 그 방법을 알아보자. 일반적으로 웹 크롤링을 하는 코드이다. 위의 파이썬 파일을 실행 시키면 좌측에 인터넷 브라우저가 뜨면서 코딩 화면을 가리기 때문에 화면에서 무슨일이 일어나고 있는지 알 수 없어 불편한 측면이 있다. 이때 Options를 이용하면 인터넷 브라우저가 뜨는 것을 막고 화면에서 일어나는 상황을 볼 수 있게 해 준다. from selenium.webdriver.chrome.options import Options 로 chrome.options 에서 Options 라이브러리를 불러 온다. 또 options = webdriver.Chrome..

파이썬 웹 크롤링 방법 2

이번에는 파이썬 웹크롤링 방법2 시간으로 방법1과는 좀 다른 방식을 소개하겠다. 아직 '파이썬 웹 크롤링 방법 1'을 보지 않은 분들은 한번 읽어보고 와 주시기 바란다. 방법1이 추출한 이미지를 한장씩 따로 따로 저장하는 방법이라면 방법2는 추출한 이미지 전체의 주소 링크를 저장하고 이미지 추출이 끝나면 한꺼번에 이미지를 다운 받는 형식이다. 이미지를 다운 받기 위한 selenium 과 크롬 드라이버등은 이미 설치가 되어 있는 것으로 간주하고 시작하겠다. 아직 selenium 과 크롬 드라이버가 설치가 되지 않은 분은 '파이썬 웹 크롤링 방법 1'의 앞부분을 보고 설치해 주기 바란다. 1. 구글 검색창의 CSS 선택자 복사하기 import urllib.request import time from sele..

파이썬 웹 크롤링 방법 1

파이썬으로 웹 크롤링 하는 방법들은 많이 알려져 있는데 그 방법들이 중구난방이라 그 방법들을 따라 해서 이미지를 다운 받는 것이 쉽지만은 않다. 이번 시간에는 웹 크롤링하는 방법들을 단계별로 나누어서 처음 웹 크롤링을 하는 사람이라도 쉽게 따라 할 수 있도록 설명해 보겠다. 일단 컴퓨터에 최신 버전의 파이썬 프로그램이 설치되어 있고 vs code를 사용할 수 있는 환경이라고 가정한다. 두 프로그램이 설치되어 있지 않다면 설치하고 시작하기 바란다. 1.파이썬 웹 크롤링 파일 만들기 탐색기에 파이썬 웹 크롤링 파일을 저장할 폴더를 하나 만든다. 그리고 vs code 상단 메뉴바에서 '파일' -> '폴더 열기'를 선택하고 그 안에 파이썬 파일을 하나 만든다. 2. selenium 설치 selenium은 웹을 ..

파이썬 업무 자동화 3편 : 엑셀 주무르기2

지난번 파이썬 업무 자동화 2편 : 엑셀 주무르기1에 이어 엑셀 주무르기 다음편을 이어 가겠다. 5)2개의 열을 읽어 오기 열을 읽어 올때는 'clos = sheet['A:B']'를 준다. [ ]속에 읽어 오고 싶은 열의 알파벳을 적어준다. 여러개의 행을 읽어 올때와 비슷한 형식임을 알 수 있다. 6)2행 2열 셀을 읽어 올때 2행 2열의 데이터를 가져오는 방식을 보자. A2, A3, B2, B3 셀의 값을 가져오기 위해서 for 문 안에 한번더 for 문을 써서 반복문을 구성했다. 이 방식을 이용해 다차원 셀 가져오기도 할 수 있을 것이다. 7)엑셀에 텍스트 추가하기 엑셀에 텍스트를 쓰기 위해서는 openpyxl 라이브러리에서 Workbook 함수를 import한다. 'A1' 셀에 텍스트를 입력하기 위..

파이썬 업무 자동화 2편 : 엑셀 주무르기1

이번 시간에는 '파이썬 업무 자동화 2편'으로 파이썬으로 엑셀 파일에 데이터를 읽고 쓰는 여러가지 방법에 대해 알아보겠다. 파이썬으로 엑셀을 다루기 위해서는 'openpyxl'이라는 엑셀 라이브러리를 설치해야 한다. 파이썬을 설치할 때 path를 지정했으면 C:\>에서도 파이썬 라이브러리를 설치할 수 있다. 여기서 에러가 나는 사람은 파이썬이 설치되어 있는 디렉토리를 찾아 들어가야 한다. "pip install openpyxl"을 입력한다. 필자의 컴퓨터에는 이미 설치가 되어 있기 때문에 설치되어 있다는 메시지가 나왔다. 사용자 컴퓨터의 상황에 따라 다른 에러가 나올 수 있으므로 에러 내용을 잘 보고 설치해 보기 바란다. 먼저 엑셀에 위와 같은 데이터를 입력하고 이 데이터를 기초로 파이썬에서 엑셀에 데이..

파이썬 업무 자동화 1편 : 파이썬으로 폴더 생성 & 제거, 파일 삭제까지

"인생은 짧다. 파이썬을 쓰세요."라는 말이 있다. 그만큼 파이썬이 쉽고 많은 수고를 줄여 준다는 말일 것이다. 이번 시간에는 파이썬으로 폴더를 쉽게 생성, 제거하고 그 안의 파일까지 지우는 방법에 대해서 알아보겠다. 다른 랭귀지로 이런 프로그램을 만든다면 아마 10여줄의 코드를 작성해야 되겠지만 파이썬에서는 단 2줄이면 된다. 1. 폴더 생성 아직 필자가 만들고 싶은 폴더가 없는 드라이브 사진이다. 이 드라이브에 "testFolder"라는 폴더를 만들어 볼 것이다. 정말 단 2줄이면 된다. OS에서 makedirs라는 라이브러리를 import한다. 여기서 주의할 점은 makedirs라는 것이다. makedir이 아니므로 s를 꼭 붙이자. s를 붙이지 않으면 에러가 발생한다. testFolder가 생성되..

반응형