일상에서 파이썬 코딩이 필요할까
업무의 자동화는 매우 매력적인 분야인 것 같습니다. 사실 직군이 사무직인 분들은 수년~수십년간 다뤄오신 엑셀에서 매크로까지 사용하시면서 능수능란하게 업무 데이터를 자유자재로 다루시는 분들이 이미 많으시리라 생각됩니다.
때문에 많은 분들이 본인의 업무와 관련있는 부분에서 이미 자동화가 가져다주는 시간적 여유와 효율성에 대해서 알고 계시리라 믿습니다.
이러한 업무 자율화를 업무 뿐만 아니라 일상생활에도 적용할 수 있다면 생각보다 많은 부분에서 시간과 노력 대비 많은 이득을 취할 수 있을 것입니다.
그 이득이란 것이 부업에 활용한다면 직접적인 경제적 수입이 될 수도 있으며, 공부에 사용한다면 지식과 정보의 축적이 될 수도 있습니다.
이러한 관심분야의 자동화는 코딩을 통해 쉽게 구현할 수 있는데요, 그 중에서도 초보자에게도 어렵지 않고 무료로 사용 가능한 파이썬을 활용한다면 아래와 같이 개인의 작업 영역을 무한대로 확장시킬 수 있습니다.
파이썬으로 관심기사 스크랩하기
건강한 생활을 지향하는 A씨는 매일 아침 출근 전 조깅을 하고 돌아와 건강식으로 간단히 아침을 먹으며 태블릿으로 뉴스를 확인합니다.
대부분의 사람들은 뉴스를 볼때도 관심있는 분야의 뉴스를 먼저 확인하는 편인데요, 포털사이트의 뉴스 탭을 보면 분야별 분류는 되어 있지만 내가 원하는 특정 신문사의 기사만 추려 보는 것은 쉽지 않습니다.
만약 A씨가 조깅을 하고 돌아오는 시간 동안 A씨의 컴퓨터가 알아서 원하는 뉴스 3사의 건강식 관련 뉴스를 각 3개씩 스크랩해서 제목과 링크를 수집해둔다면 어떨까요.
집으로 돌아온 A씨는 아마도 포털 보다는 수집된 9개의 뉴스를 먼저 확인 하고 바로 출근을 할 수 있을 것입니다.
여기서 포털사이트에서 원하는 분야를 선택하고 하나하나의 신문사를 오가는 일과 각 신문사의 건강식 관련 탭의 최신 뉴스를 찾는 일 등 별거 아닌 것 같지만 자잘하게 시간을 써야하는 일들을 모두 컴퓨터가 대신 해주면, A씨는 그냥 차려진 뉴스를 소비만 하면 되는 것입니다.
즉 효율성이 엄청나게 올라가게 되는 것이죠.
정규식 활용 - 가계부 비교하기
사실 규모가 큰 회사의 회계 장부가 아닌 이상 가정에서 필요한 수준의 가계부는 엑셀을 조금만 다뤄도 충분합니다.
하지만 그 가계부가 모이고 모여서 몇년치의 데이터가 되었다고 가정해보겠습니다.
5년 전 1월 지출과 올 1월 지출 사이 식비 또는 관리비 비교 등을 하고 싶다면 5년 전 엑셀 파일을 열어보고, 또 올 1월 엑셀파일을 열어서 육안으로 비교하거나, 또다른 시트를 만들어 각 파일에서 데이터를 불러와 비교해야합니다.
물론 5년간 가계부 작성 양식이 변함이 없고, 정확히 원하는 셀에 원하는 정보가 동일하게 기입되어 있다면 이 방법으로도 큰 불편함은 없을 수 있습니다.
하지만 만약 그렇지 않다면 어떨까요. 5년 전 가계부의 식비는 A3셀에 기입되어 있지만, 3년전 식비는 B7에, 올해는 C9에 입력되어 있다면 이 데이터를 비교하는게 쉽지 않을 것입니다.
물론 식비만 비교한다면 또 그것 나름대로 할만할 수 도 있는 작업이겠지만, 위에서 예를 든 관리비 이외 통신료, 전기세, 수도세 등등 여러 다른 항목들도 아마 같이 입력 위치가 변경되었을텐데, 이 모든 데이터의 비교를 일일이 다 할 수 있을까요.
파이썬을 활용하면 이런 문제도 의외로 간단히 풀어낼 수 있습니다.
바로 정규식을 사용하는 방법인데요, 특정한 단어 또는 형식의 문자를 컴퓨터가 알아서 분류하고 인지할 수 있도록 해주는 것이 정규식입니다.
파이썬에서는 정규식을 적극활용해서 주어진 방대한 데이터에서 원하는 정보만 골라내고 다시 재정렬 하거나 새로 작성 또는 분석하는 것이 가능합니다.
웹 서핑 대신하기
파이썬의 활용도는 무궁무진합니다. 플러그인을 설치하면 다양한 분야의 전문가들이 본인의 필요에 따라 미리 만들어둔 모듈이 붙으면서 파이썬 자체로 할 수 있는 일들의 수준이 전문적으로 바뀌게 됩니다.
이 중 대중들이 가장 흔하게 사용하는 플러그인으로 웹 서핑을 대신 해주는 셀레니움이 있습니다.
Selenium을 설치한 파이썬은 그야말로 웹상의 가상 인간이 되어 웹상 우리가 해야할 귀찮은 반복적인 일들을 대신 해줄 수 있습니다.
예를 들어 A씨가 컴퓨터에 앉기 전, 파이썬을 시켜 컴퓨터가 알아서 크롬창을 열고 1번 탭을 열어 내 블로그에 로그인 후 글쓰기 화면으로 이동, 2번 탭을 열어 포털사이트, 3번 탭을 열어 뉴스, 4번 탭을 열어 인스타그램 로그인 후 내 피드로 이동, 5번 탭을 열어 메타(페이스북) 로그인 후 친구 B의 담벼락으로 이동하게 해둘 수 있습니다.
이또한 별것 아닌 것처럼 보일 수 있지만, 방금 예를 든 5번 탭까지의 행위를 사람이 직접 하려면 아무리 빨라도 2~3분가량은 소요될 수 밖에 없습니다.
예시는 간단한 행동이지만 이보다 더 고차원적인 행동도 충분히 파이썬을 시킬 수 있으므로, 잘 활용만 한다면 일상에서 A씨는 아주 많은 시간을 절약하고 효율적으로 일할 수 있을 것입니다.
위에 예시를 든 것보다 훨씬 많은 것들을 해낼 수 있는게 코딩이라고 생각하면 그 가능성이 무궁무진하다는 것을 알 수 있습니다.
요즘은 어린 학생들이 교육과정을 통해서 이미 코딩을 접하고 있다고 합니다.
아마 시간이 좀 더 흘러 수년 뒤에는 마치 제2외국어를 배우듯 코딩을 하나의 언어로 배우는 것이 너무나도 당연한 일일 것입니다.
말그대로 컴퓨터와 소통할 수 있는 언어를 배우는 일이니까요.
지금 이 글을 읽으시는 분들도 이를 통해 코딩의 세계에 발을 들여 컴퓨터를 더 활용하고 많은 가능성들을 마련해두시기 바랍니다.
본문에는 파이썬을 콕 찝어 추천드렸으나, 꼭 파이썬이 아니어도 됩니다.
Java 또는 C+등 개인적으로 더 흥미있는 언어가 있으시다면 원하시는 언어를 지금이라도 시작해보시길 바랍니다.