Python에서 XML 파일을 처리하기 위한 라이브러리에 대해 정리했다.
XML은 트리 구조를 가진 파일을 표현하기 위한 마크업 언어다.
단순한 문자열이 아니라 계층적 구조를 가진 데이터를 표현할 수 있다.
MS Office 파일들(docx, xlsx, pptx)도 사실 XML 형식이다.
압축을 풀면 내부에 XML 파일들이 들어있는 걸 확인할 수 있다.
XML 파일을 처리하려면 파일을 해석하는 프로그램(Parser)이 필요하다.
Parser가 하는 일:
Python에서 XML/HTML을 처리하기 위해 주로 사용되는 패키지다.
pip install lxml
보통 가상환경의 Scripts 디렉토리에 설치된다:
C:\Users\사용자이름\PycharmProjects\프로젝트명\venv\Scripts
from lxml import etree
# XML 파싱
xml_string = """
Apple
Banana
"""
root = etree.fromstring(xml_string)
# 요소 접근
for item in root.findall('item'):
print(item.get('id'), item.text)
# 출력:
# 1 Apple
# 2 Banana
lxml은 Python에서 XML/HTML 처리를 위한 필수 라이브러리다.
웹 스크래핑, 문서 처리, 데이터 파싱 등 다양한 곳에서 활용된다.
특히 BeautifulSoup과 함께 사용하면 웹 크롤링 작업이 훨씬 수월해진다.
참고 자료