336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

목차 (작성 예정)

(1) 100% 만족할 파이썬 엑셀 사무 자동화, 회사에서 안 된다면?

(2) 엑셀 보안 한 방에 뚫기

(3) 시간 50배 단축, 실무 엑셀 함수 구현 (vlookup, index match 등)

(4) 실무 엑셀 함수 응용

(5) 엑셀 실무용 유용한 함수 및 기능들 파이썬으로 해결

(6) 언제까지 수작업할래? 크롤링과 사진 자동으로 캡쳐, 스샷

 


1
2
import pandas as pd
df = pd.read_csv('111.csv')
cs

전 글에서 pip install 문제 때문에 ipykernel이 설치가 안 돼서 print(1)도 되지 않았다. 이후 문제를 해결하고 1이 출력 됐을 때의 기쁨은 엄청났다. 하지만 그 기쁨도 잠시뿐. 행복한 마음으로 csv 데이터 파일을 열었더니 오류가 이렇게나 길게 나왔다.

 

 

 

문제는 UnicodeDecodeError: 'utf-8' codec can't decode byte 0x9b in position 32: invalid start byte 라고 한다.  codec 문제라고 하는데, 예전에도 이런 문제와 부딪혀 봐서 금방 해결할거라 생각했다. 

 

 

 

encodig = 'utf-8' / 'euc-kr' / 'cp949' / 'utf-8-sig' 이 중에 한 놈이라도 걸려라 했는데, 한 명도 걸리지 않았다. 그 어떤 것도 되지 않아서.. csv 파일이 문제라고 생각해서 xlsx 확장자를 열어봤는데

 

 

 

 

ValueError: Excel file format cannot be determined, you must specify an engine manually. 라는 에러 메시지가 출력됐다. 그래서 또 열심히 구글링을 하기 시작했는데 도움이 되지 않았다. 그래도 참고하실 분은 봐주세요.

 

 

 

 

 

 

 

PANDAS & glob - Excel file format cannot be determined, you must specify an engine manually

I am not sure why I am getting this error although sometimes my code works fine! Excel file format cannot be determined, you must specify an engine manually. Here below is my code with steps: 1- li...

stackoverflow.com

 

How to read SharePoint Online (Office365) Excel files in Python with Work or School Account?

I am a university student and I have registered as an Office 365 Education user via my university Email address. I usually log into https://www.office.com with my Email account: alice@abc.edu. The ...

stackoverflow.com

열심히 찾아봤는데 해결책은 의외로 간단했다.

 

openpyxl가 아닌,  xlwings을 설치하면 된다.

 

 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import openpyxl
wb = openpyxl.load_workbook('파일명')
 
#sheet 열기
sheet = wb['sheet1'
 
#workbook 생성
wb = openpyxl.Workbook() # 기본 시트 생성됨 sheet1
sheet2 = wb.create_sheet('sheet2'#마지막에 추가
sheet3 = wb.create_sheet('sheet3'1#sheet1 자리에 삽입 하여 추가
 
#시트 이름 변경
sheet2.title = '업무자동화'
 
#저장
wb.save('./new_test_file.xlsx')
wb.close()
cs

openpyxl 같은 경우 시트별로 불러와서 작업이 가능하지만, 애초에 회사 사내망 때문에 보안이 걸린 엑셀의 경우는 xlwings로만 불러 올 수 있었다. 하지만 xlwings를 사용하는 사람들이 많이 없어서 참고 자료를 찾기 어려워서 다른 방법을 선택했다.

 

 

 

1
2
3
4
import xlwings as xw
book = xw.Book('실습1.csv')
df = book.sheets(1).used_range.options(pd.DataFrame).value
df
cs

자료는 회사와 관련이 없는 자료다. 이런 식으로 작업을 하면 바로 엑셀이 실행돼서 동시 작업이 된다. 엑셀 실행이 돼서 기뻤지만 작업을 하지 못 해서 다른 방법이 뭐가 있을까 찾아봤다.

 

 

 

 

사내망 엑셀파일에 걸린 자물쇠를 뚫고 코딩하기

엑셀 자동화 (1) - xlwings 라이브러리 시작하기

maeng-gun.github.io

그래도 혹시 궁금해하실 분들을 위해서 관련 링크 걸어놓습니다.

 

저는 xlwings 대신에 pd.read_clipboard()를 사용하였습니다. 이게 참 훌륭한 기능이라는 걸 깨달았네요. 그냥 가져오고자 하는 데이터를 드래그해서 복사하시면 dataframe이 만들어집니다. 자동으로 행, 열도 생성되고 이거 아니었으면 자동화는 힘들었을거 같네요 ㅠㅠ

 

그리고 이걸로 긁어와서 만든 파일의 경우 세션(?)이 끊기기 전까지는 csv로 불러서 읽을 수 있습니다! 다만 csv 파일을 열어서 수정을 하게 되면 다시 못 쓴다는 치명적인 단점이... 그래도 수작업을 할 시간에 코드로 자동화를 한다면 훨씬 더 편하니까 이렇게 삥삥 돌아서 갑니다. 

 

다 같이 화이팅 합시다!

 

 

 

 

 

 

 

 

 

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

목차 (작성 예정)

(1) 100% 만족할 파이썬 엑셀 사무 자동화, 회사에서 안 된다면?

(2) 엑셀 보안 한 방에 뚫기

(3) 시간 50배 단축, 실무 엑셀 함수 구현 (vlookup, index match 등)

(4) 실무 엑셀 함수 응용

(5) 엑셀 실무용 유용한 함수 및 기능들 파이썬으로 해결

(6) 언제까지 수작업할래? 크롤링과 사진 자동으로 캡쳐, 스샷


카테고리 분류 작업을 포함한 수작업이  많아서, 파이썬 응용AI 교육과정에서 900시간 배웠던 파이썬을 써보기로 했다. 우선 보안이 훌륭한 회사에서는 사내망에서 접속을 차단한 사이트들이 많다. Visual Studio Code(비쥬얼 스튜디오 코드)를 다른 팀에서 쓰고 있어서 vscode는 괜찮다는 것을 알았다. 그리고 다행히 python.org 는 접속이 가능했지만, 아나콘다(anaconda)는 접속이 차단 됐다. 

 

우선 파이썬을 설치하고 비쥬얼 스튜디오 코드를 설치했다. 확장 기능들을 추천하자면

 

-pyhthon (기본)

-jupyter (기본)

-Korean(사용법) Language Pack for Visual Studio Code (기본)

-Visual Studio IntelliCode (feature 들을 추천해줌)

-Python Indent(들여쓰기 할 때 위치 구분)

-Python Docstring Generator

기타 필요 기능들은 검색

 

 

 

1
2
3
4
5
6
7
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x0000027DE1695D88>, 'Connection to pypi.org timed out. (connect timeout=15)')'/simple/google-image-download/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x0000027DE16A65C8>, 'Connection to pypi.org timed out. (connect timeout=15)')'/simple/google-image-download/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x0000027DE16A6CC8>, 'Connection to pypi.org timed out. (connect timeout=15)')'/simple/google-image-download/
WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x0000027DE16AD408>, 'Connection to pypi.org timed out. (connect timeout=15)')'/simple/google-image-download/
WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x0000027DE16ADB08>, 'Connection to pypi.org timed out. (connect timeout=15)')'/simple/google-image-download/
ERROR: Could not find a version that satisfies the requirement google-image-download (from versions: none)
ERROR: No matching distribution found for google-image-download
cs

아나콘다로 모듈들을 설치하면 더 편리한데, 그래도 pip install로 설치가 가능하니 문제가 없겠거니 생각했다. 그런데 파이썬을 설치하고 vscode까지 설치를 했는데 ipykernel이 설치가 되지 않았다. juptyer notebook을 활용하려고 했으나 실패했다.

 

이런 느낌의 오류와 함께 ipykernel이 없다는 식의 경고창이 떴다. 그래서 어떤거 문제일까 열심히 찾았는데 답이 없었다.

 

 

 

 

 

회사 프록시 때문에 pip, npm을 통해 제대로 패키지 다운로드가 안 될 때

보통 보안 인프라가 갖추어져 있는 회사에는 회사 프록시를 통해 외부 인터넷에 접속할 수 있습니다. 하지만 이게 종종 문제가 되는 게 pip, npm 같은 패키지 매니져를 통해 해당 라이브러리가 제

xzio.tistory.com

 

Proxy awareness with pip

I have tried to set up a python development environment at my work place to create some basic applications. I can't seem to get pip to work, for example I type in pip install numpy and get the foll...

stackoverflow.com

 

라즈베리파이4 파이썬 3.8 설치와 pip3 install 에러를 해결하기까지

어찌저찌 라즈베이파이4에 설치된 라즈비안 OS에 기본 내장된 파이썬이 아닌 다른 버전의 파이썬을 설치하는데 성공했습니다. 그러나, 파이썬 3.8.7을 설치한 다음 파이썬 코드를 작성하고, 실행

redfox.tistory.com

검색을 해보니 보안 인프라가 갖추어져 있기 때문에, pip 같은 패키지 매니저로 제대로 작동이 안 된다는 느낌? 그래서 프록시 서버를 무조건 신뢰한다는 옵션을 넣어서 설치하면 된다고 하는데.. 만약 위 링크들에서 해결이 되면 다행이고 안 되면 다른 방법을 소개해드리려고 한다.

 

우선 이 과정을 하기 전에 회사 IT팀과 연락을 필수로 해야한다. 원격으로 어떤 문제가 있는지 확인을 해봤는데, 목적지 IP 대역이 너무 많아서 정확한 목적지 IP대역 확인이 불가능하다는 결론이 나왔다. 목적지 IP/port를 알 수 있다면 방화벽 신청을 하면 되지만 이건 불가능했다.

 

그래서 임시방편으로 테더링을 추천해주셔서 그렇게 했다. 안 되면 핫스팟으로 pip install을 해보면 된다. 혼자서 파이썬을 설치하려고 하니.. 기본 구축이 왜 이렇게 어렵고, 에러가 많이 나지? 좌절했는데 알고보니 회사 프록시 서버 문제여서 황당했다. 이후에는 별다른 문제 없이 모듈들이 잘 설치 됐고 작업을 진행할 수 있었다.

 

 

 

 

사내망 막힌 사이트 볼 수 있는(뚫을 수 있는) 팁을 드리자면, 구글에서 사이트 주소 옆에 거꾸로된 삼각형을 클릭하여 저장된 페이지를 클릭한다. velog.io 사이트나 간혹 아예 차단이 된 사이트는 열리지 않는다. 그래도 코드를 혼자 짜다보면 무한 에러가 나기 때문에 구글에서 이렇게라도 검색할 수 있어서 다행이다 ㅠㅠ

 

하지만 더 큰 문제가 있었으니... 파이썬에서 엑셀, csv 파일들을 읽을 수 없었다. 진짜 산 넘어 산

 

다음 편에 계속

336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

정말 속전속결이었다. 이렇게 빨리 합격 소식과 함께 출근하게 될 줄은 몰랐다. 이틀만에 서류전형 합격소식이 왔고, 3일 뒤에 면접을 볼 수 있냐는 말에 면접도 기회라서 보게 됐다. 면접을 봤을 때 어느 정도 느낌이 있었지만 면까몰이라고 했으니 기다리고 있었다. 면접 본 다음 날 합격했다고 전화가 와서 바로 준비를 했다.

오랜만에 면접을 봐서 그런지 어떻게 해야할까 질문도 찾아보고, 유튜브도 다시 보게 됐다. 그런데 나 같은 경우는 그럴 필요가 없었다... 이건 뒤에 가서 얘기를 하고 그래도 면접 질문이 궁금해서 찾아오신 분들이 있으니 정리한 걸 공유하려고 한다.



마케팅, 데이터, 기획 쪽 직무?

1. 자기소개
2. 지원동기
3. 펑타이 코리아에 대해서
4. 광고대행사 무슨 일 하는지
5. 지원한 포지션에 뽑혀야 하는 이유 or 강점
6. 성격 장·단점
7. 엑셀, 기본적인 문서 작업 수준
8. 어떤 식으로 스트레스 푸는지
9. 광고대행사의 야근에 대해 어떻게 생각
10. 어떤 동료, 상사와 일하고 싶은지

요즘 내용이 많이 바뀌어서 자소서 관련 부분 팀프로젝트 관련 필히 준비하세요~

*자소서 기반 질문 위주라서 준비해야 한다



열심히 면접왕 이형 1분 자기소개서 보고 연습 했는데, 나는 자기소개도 건너 뛰었다. 그냥 면접관님(팀장님)이 단도직입적으로 자소서에 쓴 내용 때문에 면접 꼭 면접 보고싶었다고... 말하기는 민망하지만 블로그에 쓴 글과도 연관이 되어있다.

그래서 어떤 식으로 그런 결과를 낼 수 있었는지 여쭤보셨다. 그쪽 관련해서는 엄청나게 다양한 시도를 하고, 경험을 직접 해봐서 술술 대답을 할 수 있었다. 반복해서 하는 일인데 괜찮냐는 말과 함께 6개월 동안 하는 직무니까 중간에 그만두지는 않을 거죠?라고 하셔서 '아, 이건 된건가..?' 싶었다. 추가로 경험했던 부분이 퍼포먼스 마케팅을 직접하고 있었다는 식으로 얘기를 해주셨다. 데이터 관련직무인데 인사이트를 가지고 있어서 뽑힌게 아닌가하는 생각이 들었고, 들어가서 어떤걸할지 많이 궁금했다.

엑셀이나 기본적인 문서 다루는 걸 물어보셨으면... 파이썬으로 자동화 해보고싶다고 말씀드리고 싶었는데, 물어보시지는 않았다.



그렇게 일주일만에 모든 절차가 끝나고 합격을 했다. 그리고 지금 출근한지 몇 주가 됐는데.. 현재는 인수인계를 하고 있기도 하고, 일이 5~6월이 몰린다고 해서 할게 많지는 않다. 데이터를 다루고, GA로 데이터를 뽑는 걸 반복해서 한다고 했는데 아직은 제대로 보지는 못 했다.

그런데 예상했던 것과 달리, 펑타이는 수작업이 많아 보인다. 그래서 인턴을 많이 뽑는다는 말이 있을 정도.. 제일기획 자회사다 보니 그만큼 일이 많아서기도 하다. PTKOREA로 회사 상호명이 바뀌었습니다.



회사생활

회사는 자유롭다. 수평적인 가운데 서로 영어 호칭을 쓴다. 복장도 진짜 자유롭다. 처음에 세미 정장느낌으로 입고 갔는데 그럴 필요가 없었다. 블라인드에서는 여름에 반바지도 입을 정도라고.. 간식도 많고, 자율 출퇴근제라서 편하게 다닐 수 있다.

지금 그래서 무슨 일을 하냐고 물으면, 성격상 수작업이나 효율 떨어지는 일을 싫어서 업무 자동화를 시도하고 있다. 진짜 제약이 너무 많기는 하지만 ㅋㅋㅋㅋㅋ 꿋꿋이 하고 있다. 엑셀 MATCH, VLOOKUP 이런 함수를 다 파이썬으로 만들고 있다. 노트북도 좋은게 아닌데 엑셀 함수를 돌리면 거의 하루종일 걸리는 듯 해서 파이썬으로 코드를 짜고 있다(95% 이상 완성). 추가로 크롤링과 자동 캡쳐까지하고 시도하고 있다... 데이터를 어떻게 저장할지, 어떤 규칙으로 분류할지 많은 생각을 하게 된다.




+ Recent posts