엑셀라이터 xlsxwriter
인프런 엑셀라이터 강의 요약 영상
- 해당 강의는 인프런의 Python 엑셀 프로그래밍 - with xlsxwriter(https://inf.run/Vqew) 강의에 공개용 요약강좌입니다.
- github(https://github.com/paullabkorea/xlsxwriter) 에서 모든 소스코드를 다운로드 받으실 수 있습니다.
- 엑셀 차트, 이미지 삽입, 한글파일 -> DataFrame 변환을 통한 데이터 분석 등은 요약강좌에서 다루지 않습니다.
- 무료책인 인공지능을 활용한 업무자동화 책(2021 Version Notion)을 활용하면 좀 더 활용성이 극대화된 코딩이 가능합니다.(크롤링, 워드파일 크롤링, PDF크롤링, 문자 보내기 등)
- 업무자동화 Notion 링크 : https://paullabworkspace.notion.site/2021-6192ed4219fc4e7a96e10b22cfa27c80
!pip3 install xlsxwriter
- workbook
- worksheet
- cell
import xlsxwriter
workbook = xlsxwriter.Workbook('test.xlsx')
#파일 안에 워크 시트 생성하기(test이름으로 생성, 여러개의 워크시트 만들 수 있음)
worksheet = workbook.add_worksheet('test')
#워크 시트 안에 문자열 값을 넣습니다.
worksheet.write('A1', 'A')
worksheet.write('B1', 'B')
worksheet.write('C1', 'C')
worksheet.write('D1', 'D')
worksheet.write('E1', 'E')
#워크 시트 안에 숫자 값을 넣습니다.
worksheet.write('A2', 1)
worksheet.write('B2', 2)
worksheet.write('C2', 3)
worksheet.write('D2', 4)
worksheet.write('E2', 5)
#워크 시트 안에 숫자 값을 넣습니다.
worksheet.write(2, 0, 1)
worksheet.write(2, 1, 2)
worksheet.write(2, 2, 3)
worksheet.write(2, 3, 4)
worksheet.write(2, 4, 5)
workbook.close()
workbook = xlsxwriter.Workbook('test.xlsx')
#파일 안에 워크 시트 생성하기(test이름으로 생성, 여러개의 워크시트 만들 수 있음)
worksheet = workbook.add_worksheet('test')
#워크 시트 안에 숫자 값을 넣습니다.
for i in range(10):
# worksheet.write(행, 열, 값)
worksheet.write(i, 0, i + 1)
worksheet.write(i, 1, 60)
workbook.close()
workbook = xlsxwriter.Workbook('test.xlsx')
#파일 안에 워크 시트 생성하기(test이름으로 생성, 여러개의 워크시트 만들 수 있음)
worksheet = workbook.add_worksheet('test')
#워크 시트 안에 숫자 값을 넣습니다.
# worksheet.write(행, 열, 값)
worksheet.write('A1', 1)
worksheet.write('B1', 2)
worksheet.write('A2', '=A1+B1')
worksheet.write('B2', '=A1-B1')
worksheet.write('C2', '=A1/B1')
worksheet.write('D2', '=A1*B1')
workbook.close()
workbook = xlsxwriter.Workbook('test.xlsx')
#파일 안에 워크 시트 생성하기(test이름으로 생성, 여러개의 워크시트 만들 수 있음)
worksheet = workbook.add_worksheet('test')
#워크 시트 안에 숫자 값을 넣습니다.
# worksheet.write(행, 열, 값)
worksheet.write('A1', 1)
worksheet.write('B1', 2)
worksheet.write('C1', 3)
worksheet.write('D1', 4)
worksheet.write('E1', 5)
worksheet.write('A2', '=SUM(A1:E1)')
worksheet.write('B2', '=AVERAGE(A1:E1)')
workbook.close()
# https://olefile.readthedocs.io/en/latest/Howto.html
# 우리 수업에서는 사용하지 않습니다.
!pip install olefile
!pip install ole-py
import ole
with ole.open('이력서_1.hwp') as f:
print(f.list_streams())
print('=' * 10)
data = f.get_stream('PrvText').read().decode('utf-16le')
print(data)
text = 'lee!ho!jun'
text.split('!')
data.split('><')
splitdata = data.split('><')
splitdata
splitdata[2]
splitdata[1]
splitdata.index('성 명')
splitdata
개인정보 = [
'성 명',
'생 년 월 일',
'현 주 소',
'연 락 처',
'이 메 일'
]
결과 = []
for i in range(len(splitdata)):
for j in range(len(개인정보)):
if splitdata[i] == 개인정보[j]:
결과.append(splitdata[i + 1])
결과
결과[-1] = 결과[-1].split('>')[0]
결과
학력사항 = [
'학교명',
'전공',
'성적',
'졸업구분',
'소재지'
]
학력사항결과 = []
for i in range(len(splitdata)):
for j in range(len(학력사항)):
if splitdata[i] == 학력사항[j]:
학력사항결과.append(splitdata[i + 5])
학력사항결과
학력사항결과[-1] = 학력사항결과[-1].split('>')[0]
학력사항결과
index = 개인정보 + 학력사항
index
result = 결과 + 학력사항결과
result
!pip install xlsxwriter
import xlsxwriter
#엑셀 파일 생성하기(test.xlsx로 생성)
workbook = xlsxwriter.Workbook('test.xlsx')
#파일 안에 워크 시트 생성하기
worksheet = workbook.add_worksheet('test')
# worksheet.write(2, 0, 1)
worksheet.write(0, 0, index[0])
worksheet.write(0, 1, index[1])
worksheet.write(0, 2, index[2])
worksheet.write(0, 3, index[3])
workbook.close()
import xlsxwriter
#엑셀 파일 생성하기(test.xlsx로 생성)
workbook = xlsxwriter.Workbook('test.xlsx')
#파일 안에 워크 시트 생성하기
worksheet = workbook.add_worksheet('test')
for i in range(10):
worksheet.write(0, i, index[i].replace(' ', ''))
for j in range(10):
worksheet.write(1, j, result[j])
workbook.close()
'he!!llo wor!!!ld'.replace('!', '@')
import glob
path = ('./*.hwp')
for filename in glob.glob(path):
print(filename)
filelist = !ls
filelist