[python] Beautiful Soup로 XML 파싱하기

XML은 데이터를 계층적으로 구조화하여 저장하는 형식으로, 다양한 웹 서비스에서 많이 사용됩니다. Beautiful Soup은 Python 라이브러리로, XML 문서를 파싱하여 원하는 데이터를 추출하는데 유용합니다. 이번 포스트에서는 Beautiful Soup을 사용하여 XML 문서를 파싱하는 방법을 알아보겠습니다.

먼저, Beautiful Soup 라이브러리를 설치해야 합니다. 아래의 명령어를 사용하여 설치할 수 있습니다.

pip install beautifulsoup4

이제 Beautiful Soup을 사용하여 XML 문서를 파싱해 보겠습니다.

from bs4 import BeautifulSoup

# XML 문서를 파싱할 파일의 경로
xml_file = "data.xml"

# 파일을 읽어 Beautiful Soup 객체를 생성
with open(xml_file, 'r') as f:
    xml_content = f.read()
    soup = BeautifulSoup(xml_content, 'xml')

# 원하는 데이터 추출
items = soup.find_all('item')
for item in items:
    name = item.find('name').text
    price = item.find('price').text
    print(f"상품명: {name}, 가격: {price}")

위의 코드에서는 data.xml 파일을 읽어 Beautiful Soup 객체를 생성합니다. find_all 메서드를 사용하여 원하는 태그를 가져올 수 있고, 각 태그의 내용을 text 속성을 사용하여 추출할 수 있습니다.

위의 예제는 item 태그를 찾아 그 안에 있는 nameprice 태그의 내용을 추출하는 예제입니다.

이제 Beautiful Soup을 사용하여 XML 문서를 파싱하는 방법을 알았습니다. 이를 응용하여 웹 스크래핑 등 다양한 작업에 활용할 수 있습니다.

참고 자료