반응형

안녕하세요, 츄르 사려고 코딩하는 집사! 코집사입니다.


파이썬 XML을 이용하여 기상청 데이터 스크래핑하기


# ElementTree 모듈을 로드
from xml.etree import ElementTree
import pandas as pd

#parse() 함수로 파일을 읽고 ElementTree 객체를 생성
tree = ElementTree.parse('rss.xml')

# getroot() 메서드로 XML의 루트 element를 추출
root = tree.getroot()

데이터프레임_리스트 = []
for item in root.findall('channel/item/description/body/location/data') :
    #find()메서드로 element 탐색, text 속성으로 값을 추출
    tm_ef = item.find('tmEf').text
    tmn = item.find('tmn').text
    tmx = item.find('tmx').text
    wf = item.find('wf').text
    rnSt = item.find('rnSt').text
    데이터프레임 = pd.DataFrame({
        '일시' : [tm_ef],
        '최저기온' : [tmn],
        '최고기온' : [tmx],
        '날씨' : [wf],
        '강수확률' : [rnSt],
    })
    데이터프레임_리스트.append(데이터프레임)
날씨정보 = pd.concat(데이터프레임_리스트)

print(날씨정보)

 

긁어 오면서 text 뒤에 "%" 를 넣어주면 %까지 데이터 프레임 내 데이터에 출력할 수 있습니다.

 

반응형
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기