[python] PDF 파일에서 텍스트 유형 수정하기
PDF 파일은 일반적으로 텍스트 편집이 어려운 형식입니다. 하지만 Python을 사용하면 PDF 파일에서 텍스트를 추출하고 수정할 수 있습니다. 이번 블로그 포스트에서는 PyPDF2 라이브러리를 사용하여 PDF 파일에서 텍스트 유형을 수정하는 방법을 알아보겠습니다.
1. PyPDF2 라이브러리 설치하기
PyPDF2는 Python에서 PDF 파일을 다루는 데 사용되는 라이브러리입니다. 다음 명령어를 사용하여 PyPDF2를 설치합니다.
pip install PyPDF2
2. PDF 파일 열기
PDF 파일을 열기 위해 PyPDF2의 PdfFileReader
클래스를 사용합니다. 다음 코드를 참고하세요.
import PyPDF2
def open_pdf(file_path):
pdf_file = open(file_path, 'rb')
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
return pdf_reader
3. 텍스트 추출하기
PDF 파일에서 텍스트를 추출하기 위해 getText()
메서드를 사용합니다. 다음 코드를 참고하세요.
def extract_text(pdf_reader, page_num):
page = pdf_reader.getPage(page_num)
text = page.extractText()
return text
4. 텍스트 유형 수정하기
PDF 파일에서 텍스트 유형을 수정하기 위해 setText()
메서드를 사용합니다. 다음 코드를 참고하세요.
def modify_text(pdf_reader, page_num, modified_text):
page = pdf_reader.getPage(page_num)
page.setText(modified_text)
return page
5. 수정된 PDF 파일 저장하기
수정된 텍스트로 업데이트된 PDF 파일을 저장하기 위해 PdfFileWriter
클래스를 사용합니다. 다음 코드를 참고하세요.
def save_pdf(pdf_reader, output_path):
pdf_writer = PyPDF2.PdfFileWriter()
for page_num in range(pdf_reader.numPages):
page = pdf_reader.getPage(page_num)
pdf_writer.addPage(page)
output_file = open(output_path, 'wb')
pdf_writer.write(output_file)
output_file.close()
6. 예제 코드 전체
위에서 소개한 함수들을 합쳐서 예제 코드를 작성해보겠습니다.
import PyPDF2
def open_pdf(file_path):
pdf_file = open(file_path, 'rb')
pdf_reader = PyPDF2.PdfFileReader(pdf_file)
return pdf_reader
def extract_text(pdf_reader, page_num):
page = pdf_reader.getPage(page_num)
text = page.extractText()
return text
def modify_text(pdf_reader, page_num, modified_text):
page = pdf_reader.getPage(page_num)
page.setText(modified_text)
return page
def save_pdf(pdf_reader, output_path):
pdf_writer = PyPDF2.PdfFileWriter()
for page_num in range(pdf_reader.numPages):
page = pdf_reader.getPage(page_num)
pdf_writer.addPage(page)
output_file = open(output_path, 'wb')
pdf_writer.write(output_file)
output_file.close()
# 사용 예시
pdf_reader = open_pdf('example.pdf')
text = extract_text(pdf_reader, 0)
modified_text = '수정된 텍스트입니다.'
modified_page = modify_text(pdf_reader, 0, modified_text)
save_pdf(pdf_reader, 'modified_example.pdf')
마무리
이번 블로그 포스트에서는 PyPDF2 라이브러리를 사용하여 Python에서 PDF 파일에서 텍스트 유형을 수정하는 방법을 알아보았습니다. PDF 파일의 텍스트를 추출하고 수정할 수 있으므로, 자동화나 가공 작업을 할 때 유용하게 사용할 수 있습니다.