문서나 데이터의 구조를 해석하여 원하는 값이나 의미 있는 데이터로 변환하는 프로그램
즉, 입력된 데이터를 컴퓨터가 이해할 수 있는 구조로 바꿈예를 들면,
- XML 파서는 XML 문서를 분석해서 요소, 속성 등 구성 정보를 파악하고 필요한 데이터 추출
- JSON 파서는 JSON 형식의 데이터를 프로그램이 활용할 수 있는 객체 등으로 변환
{}
, XML의 <tag></tag>
등데이터 포맷 | 변환 전 | 파서가 만들어내는 구조 예시 |
---|---|---|
텍스트 | "2024-07-16" | 문자열(str), 날짜 객체(DateTime) |
CSV | name,age\nTom,25 | 2차원 배열(List of lists), 오브젝트 배열 |
XML | <user><id>1</id></user> | 트리(Tree) 구조, 노드(객체), 딕셔너리(dict) |
JSON | { "id":1, "name":"Tom" } | 딕셔너리(dict), 객체(Object) |
HTML | <div>Text</div> | 트리 구조(노드, Element), 딕셔너리 |
입력
{ "id": 1, "name": "Tom", "roles": ["admin", "user"] }
파싱 후
{
"id": 1,
"name": "Tom",
"roles": ["admin", "user"]
}