Python에서 XML을 JSON으로 변환

Muhammad Waiz Khan 2021년3월24일
Python에서 XML을 JSON으로 변환

이 자습서에서는 Python에서 XML을 JSON으로 변환하는 방법을 살펴 봅니다. JSON 형식은 XML 형식보다 읽고 쓰기가 더 간단합니다. 컴팩트 한 스타일과 가벼운 무게는 특히 RESTful API에서 시스템 성능을 향상시킵니다. JSON은 여러 측면에서 XML보다 낫기 때문에 많은 분야에서 XML 대신 사용됩니다.

이제 XML 형식으로 저장된 데이터가 있고이를 JSON 형식으로 변환한다고 가정합니다. 다음 방법을 사용하여 XML 데이터를 Python에서 JSON으로 변환 할 수 있습니다.

xmltodict모듈을 사용하여 Python에서 XML을 JSON으로 변환

Python에는 데이터를obj인수로 취하고이를 JSON 형식의 스트림으로 직렬화하고 형식화 된 데이터를 출력으로 반환하는json.dumps(obj)메서드가 있습니다.

obj인수는 사전, 문자열, 목록 또는 튜플 등이 될 수 있으며,json.dumps()메소드는 데이터 유형에 따라obj를 변환합니다. JSON 객체가 필요한 경우처럼json.dumps()메소드가 사전을 JSON 객체로 변환하므로 입력을 사전으로 제공해야합니다. 목록 또는 튜플 유형은 JSON 배열로 변환되고 문자열 유형은 JSON 문자열로 변환됩니다.

xmltodict.parse()메소드를 사용하여 XML 데이터를 Python 사전 데이터 유형으로 변환 할 수 있습니다. xmltodict.parse()메소드는 XML 형식 데이터를 문자열로 취하고 데이터를 구문 분석하고 출력을 사전으로 리턴합니다.

xmltodict.parse()메소드를 사용하여 데이터를 사전으로 변환 한 후json.dumps()메소드를 사용하여 데이터를 JSON 객체로 변환 할 수 있습니다.

아래 예제 코드는 Python에서json.dumps()xmltodict.parse()메소드를 사용하여 XML 데이터를 JSON으로 변환하는 방법을 보여줍니다.

import xmltodict
import json

dictionary = xmltodict.parse(
    """<note>
  <date>2021-03-07</date>
  <time>15:23</time>
  <to>Sara</to>
  <from>Khan</from>
  <msg>Let's meet this weekend!</msg>
</note>"""
)
json_object = json.dumps(dictionary)
print(json_object)

출력:

{"note": {"date": "2021-03-07", "time": "15:23", "to": "Sara", "from": "Khan", "msg": "Let's meet this weekend!"}}

관련 문장 - Python XML

관련 문장 - Python JSON