“ 매주 목요일마다 당신이 항상 하던대로 신발끈을 묶으면 신발이 폭발한다고 생각해보라.
컴퓨터를 사용할 때는 이런 일이 항상 일어나는데도 아무도 불평할 생각을 안 한다. ”- Jef Raskin
맥의 아버지 - 애플컴퓨터의 매킨토시 프로젝트를 주도
반응형
귀찮은 문서를 자동화로 만들어봅시다
파이썬을 이용하여 업무 자동화를 해봅시다
파이썬은 다양한 자동화 작업을 효율적으로 처리할 수 있는 강력한 도구입니다. 그중에서도 문서 자동화는 업무 효율성을 극대화하고 반복 작업을 줄여주는 중요한 기능입니다. 본 글에서는 파이썬을 활용하여 문서를 자동으로 생성하는 방법에 대해서 간단하게 알아보도록 하겠습니다.
목차
자동화문서
반복적인 문서 작성 작업을 자동화하면 시간이 절약되고 실수를 줄일 수 있어 좋을 것 같습니다. 예를 들어, 보고서 작성, 계약서 작성, 이메일 발송 등의 작업을 자동화를 할 수 있습니다.
필요한 파이썬 라이브러리
패키지명 | 패키지설명 |
python-docx | Microsoft Word 문서를 생성하고 수정할 수 있는 라이브러리 |
openpyxl | Excel 파일을 생성하고 수정할 수 있는 라이브러리 |
pdfkit | HTML을 PDF로 변환하는 데 유용한 라이브러리 |
Pandas | 데이터 처리를 위해 사용되며, 특히 Excel 파일에 데이터를 삽입 |
자동화 알아보기
World
from docx import Document
# 새 문서 만들기
doc = Document()
# 제목 추가
doc.add_heading('Word 문서 생성 - 오딘박스', 0)
# 본문 내용 추가
doc.add_paragraph('이 문서는 자동화로 만들어졌습니다.')
# 문서 저장
doc.save('automated_document.docx')
Python-docx를 활용을 하면 아래와 같이 만들 수 있습니다. 해당 소스는 이 문서[#]에 있는 예제소스입니다.
from docx import Document
from docx.shared import Inches
document = Document()
document.add_heading('Document Title', 0)
p = document.add_paragraph('A plain paragraph having some ')
p.add_run('bold').bold = True
p.add_run(' and some ')
p.add_run('italic.').italic = True
document.add_heading('Heading, level 1', level=1)
document.add_paragraph('Intense quote', style='Intense Quote')
document.add_paragraph(
'first item in unordered list', style='List Bullet'
)
document.add_paragraph(
'first item in ordered list', style='List Number'
)
document.add_picture('monty-truth.png', width=Inches(1.25))
records = (
(3, '101', 'Spam'),
(7, '422', 'Eggs'),
(4, '631', 'Spam, spam, eggs, and spam')
)
table = document.add_table(rows=1, cols=3)
hdr_cells = table.rows[0].cells
hdr_cells[0].text = 'Qty'
hdr_cells[1].text = 'Id'
hdr_cells[2].text = 'Desc'
for qty, id, desc in records:
row_cells = table.add_row().cells
row_cells[0].text = str(qty)
row_cells[1].text = id
row_cells[2].text = desc
document.add_page_break()
document.save('demo.docx')
Excel
import openpyxl
# 새 워크북 생성
wb = openpyxl.Workbook()
sheet = wb.active
# 데이터 삽입
sheet['A1'] = '이름'
sheet['B1'] = '직급'
sheet['A2'] = '최영환'
sheet['B2'] = '주임'
# 워크북 저장
wb.save('자동문서.xlsx')
OpenPyXL[#]로 들어가 자세한 가이드문서를 볼 수 있습니다.
import pdfkit
# HTML 콘텐츠를 PDF로 변환
html_content = """
<html>
<body>
<h1>오딘박스 접속방법</h1>
<p>오딘박스의 접속 주소는 https://odinbox.co.kr/입니다.</p>
</body>
</html>
"""
# PDF로 저장
pdfkit.from_string(html_content, '자동문서.pdf')
pdfkit을 활용을 하여 html을 pdf로 변환을 하는 방법입니다. 해당 라이브러리[#]에 들어가 보면 자세한 가이드를 알 수 있습니다.
마무리
파이썬을 활용한 문서 자동화는 반복적이고 시간 소모적인 작업을 줄여줄 수 있는 매우 유용한 기술입니다. 파이썬의 라이브러리를 활용하면 문서 생성 및 관리 작업을 훨씬 효율적으로 처리할 수 있습니다. 예시들을 참고하여, 여러분도 파이썬을 통해 업무를 자동화하고 생산성을 높일 수 있을 것입니다