본문 바로가기
Python/Data Visualization

[API 활용] xml 파일 데이터프레임으로 변환 (read_xml)

by ISLA! 2023. 8. 7.

xml 파일 ▶︎ pandas 데이터프레임으로

서울시 열린데이터 광장 API 를 가지고 예제 진행

  • 원하는 컬럼들만 가져와서 처리가 편한 pandas dataframe으로 변환
  • read_xml 메서드로 쉽게 xml 파일을 변환할 수 있음
  • 원하는 컬럼을 지정하고, 컬럼명도 바꿔준다
  • 결측치가 있는 경우, 이를 제외하고 인덱스를 리셋
import pandas as pd
import xml.etree.ElementTree as ET
import requests
url = "http://openapi.seoul.go.kr:8088/인증키/xml/tbLnOpendataRtmsV/1/5/"
response = requests.get(url)

df = pd.read_xml(response.content)
select_columns = ['ACC_YEAR', 'SGG_NM', 'BJDONG_NM', 'BLDG_NM','OBJ_AMT']
df = df[select_columns]

df.columns = ['연도', '구이름', '동이름', '건물명', '가격']
df = df.dropna().reset_index(drop=True)

df

👉 결과


🔍 또 다른 방법(더 간단!)

import requests
import pandas as pd

api_key = "인증키번호"
url = f"http://openapi.seoul.go.kr:8088/{api_key}/xml/tbLnOpendataRentV/1/5/"
req = requests.get(url)

df = pd.read_xml(req.content, xpath='/tbLnOpendataRentV/row')
pd.DataFrame(df).head()

👉 결과

 

728x90