본문 바로가기
아래아한글 자동화/pyhwpx 사용법

[크롤링 연계2] 보건소 정보로 한/글 파일 만들기

by 일코 2024. 1. 23.

이전 포스팅에 이어,

 

[크롤링 연계] 전국 보건소 정보 가져오기1

아래 코드를 주피터노트북에서 실행하면 질병관리청의 "전국 보건소 정보"를 엑셀로 저장한다.HTML 삽입미리보기할 수 없는 소스다음 포스팅에서는 이 엑셀파일을 한/글의 표로 옮겨보겠다. 미

martinii.fun

엑셀로 취합한 전국 261개 보건소 및 의료원 정보를
한/글 문서의 표로 생성하는 방법을 알아보자.

1. 그대로 집어넣기(세상 간편)

엑셀시트 그대로 삽입하는 방법이다.
"보건소.xlsx" 파일이 저장된 위치에서 아래 코드를 실행하면,

from pyhwpx import Hwp


hwp = Hwp()

hwp.table_from_data(
    "./보건소.xlsx", # 엑셀파일명
    index=False,    # 1열에 연번 추가안함
    cell_fill=True  # 제목행에 회색음영
    )

 

시연화면

아래와 같은 표가 완성된다.

그런데 포맷이 다소 아쉽다

한/글에서 조작해도 되지만,
파이썬 판다스에 익숙한 분들이라면
판다스 데이터프레임으로 가공한 후
데이터프레임을 table_from_data에 넣어도 된다.

예를 들어,
대표번호 하나만 남기고, 예방접종실 전화번호는 지워버리고 싶다면?
(사실 중복되는 보건소도 제법 있다.)
아래와 같이 df를 수정한 후, table_from_data에 넣고 실행한다.

import pandas as pd
from pyhwpx import Hwp

df = pd.read_excel("보건소.xlsx")
df["전화번호 / 예방접종실"] = df["전화번호 / 예방접종실"].apply(lambda x: x.split(" ")[0])
df.columns = "보건소명", "전화번호", "주소"

hwp = Hwp()
hwp.table_from_data(df, index=False)

실행해보면,

시연화면

이렇게 데이터가공은 판다스 데이터프레임에서 최대한 마치고(편하니까!)
마지막으로 열너비 편집이나 제목행 음영넣기 같은 작업은 반복작업이 아니므로
한/글에서 마무리해도 무관할 것이다.

끝.

댓글