XML 객체 생성, XML 문서 파싱하기

CODEDRAGON Development/Python

반응형

 

 

 

XML 객체 생성

xml 파일을 통해 ElementTree 객체(XML 객체) 생성합니다.

from xml.etree.ElementTree import parse,

메소드

설명

parse('filename.xml')

xml 파싱(parsing)하여 ElementTree 객체 생성

 

tree = parse("meeting.xml")

 

 

  

XML 문서 파싱하기

ElementTree 객체(XML 객체) 통해 해당 태그요소에 접근할 있습니다.

메소드

설명

node객체.get("속성명")

·         번째 인자에 해당되는 속성(attribute) 값을 값을 리턴합니다.

node객체.get("속성명", "default value")

·         번째 인자에 해당되는 속성(attribute) 값이 없을 경우 번째 인자로 지정가 기본값을 리턴합니다.

node객체.keys()

·         모든 속성(attribute) 값을 리스트로 리턴합니다.

node객체.items()

·         모든 속성을 key, value 쌍을 리턴합니다.

node객체.text

·         해당 태그요소(노드객체) 문자열 정보를 반환합니다.

 

 

  

XML 태그 접근하기

 

메소드

설명

node객체.find("태그명")

note 태그 하위에 태그명과 일치하는 번째 태그를 찾아서 리턴하고, 없으면 None 리턴합니다.

 

note.find("태그명")

node객체.findall("태그명")

note 태그 하위에 태그명과 일치하는 모든 태그를 리스트로 리턴합니다.

 

note.findall("태그명")

node객체.findtext("태그명")

note 태그 하위에 태그명과 일치하는 첫번째 태그의 텍스트 값을 리턴합니다.

 

note.findtext("태그명")

getiterator()

특정 태그의 모든 하위 엘리먼트를 순차적으로 처리합니다.

getchildren()

특정 태그의 모든 하위 엘리먼트를 순차적으로 처리합니다.

getiterator("태그명")

번째 인수로 태그명을 받을 있습니다.

 

  

note.find("from") note 태그 하위에 from 일치하는 번째 태그를 찾아서 리턴하고, 없으면 None 리턴합니다.

from_tag = note.find("from")

 

 

note.findall("from") note 태그 하위에 from 일치하는 모든 태그를 리스트로 리턴합니다.

from_tags = note.findall("from")

 

 

note.findtext("from") note 태그 하위에 from 일치하는 첫번째 태그의 텍스트 값을 리턴합니다.

from_text = note.findtext("from"

 

 

특정 태그의 모든 하위 엘리먼트를 순차적으로 처리할 때는 아래의 메서드를 사용합니다.

childs = note.getiterator()

childs = note.getchildren()

 

 

getiterator() 함수는 번째 인수로 태그명을 받을 있습니다.

note.getiterator("from")