Python ElementTree / ElementInclude 및 xpointer를 사용하여 포함 된 XML 파일에 액세스

GKontos

2 개의 'sub_x.xml'파일이 포함 된 'main.xml'파일이 있습니다. 포함 줄은 'xpointer'를 사용하여 include xml의 특정 태그 만 가리 키거나 포함합니다. ElementTree를 사용하여 이것이 올바르게 작동하는지 확인할 때 원하는 태그뿐만 아니라 전체 'sub'xml 파일이 포함되어 있음을 보여줍니다. xpointer를 잘못 사용하고 있는지 또는 ElementTree 또는 ElementInclude가이를 지원하지 않는지 확실하지 않습니다. 다음은 파일입니다.

------ 'main.xml'--------

`<?xml version='1.0' encoding='utf-8'?>
<ModelInfo xmlns:xi="http://www.w3.org/2001/XInclude">
    <xi:include href="sub_1.xml" xpointer="xpointer(//ModelInfo/Model)" parse="xml" />
    <xi:include href="sub_2.xml" xpointer="xpointer(//ModelInfo/Model)" parse="xml" />  
</ModelInfo>`

------- 'sub_1.xml'------

`<?xml version="1.0" ?>
<ModelInfo>
  <Model ModelName="glow">
    <Variables>
     <Variable Alias="glow_val" Input="False" Output="True" />
    </Variables>
  </Model>
</ModelInfo>`

------- 'sub_2.xml'------

`<?xml version='1.0' encoding='utf-8'?>
<ModelInfo>
  <Model ModelName="sirpwr_b_supply8v1">
   <Variables>
    <Variable Alias="sirpwr_a_supplyecu_Snsr8vIstat" Input="True" Output="False" />
   </Variables>
  </Model>
</ModelInfo>`

'main.xml'이 ElementTree에 다음과 같이 나타나기를 바랍니다.

`<?xml version='1.0' encoding='utf-8'?>
<ModelInfo xmlns:xi="http://www.w3.org/2001/XInclude">
  <Model ModelName="glow">
    <Variables>
     <Variable Alias="glow_val" Input="False" Output="True" />
    </Variables>
  </Model>
  <Model ModelName="sirpwr_b_supply8v1">
    <Variables>
     <Variable Alias="sirpwr_a_supplyecu_Snsr8vIstat" Input="True" Output="False" />
     <Variable Alias="sirpwr_b_supply8v1_qstat" Input="False" Output="True" />
   </Variables>
   </Model>
</ModelInfo>`

XML 파일을로드하고 테스트하기 위해 실행중인 스크립트는 다음과 같습니다.

`tree = ElementTree.parse('main.xml')
root = tree.getroot()
ElementInclude.include(root)
for element in root:
    print element.tag`

'ModelInfo'가 'sub_x'xml 파일에서 복사되기 때문에 xpointer가 작동하지 않습니다.

mzjn

ElementIncludeXInclude를 모두 지원하지는 않습니다. 요소 xpointer속성 <include>은 무시됩니다.

lxmlxinclude()메소드를 사용 하여 원하는 방식으로 작동합니다 .

from lxml import etree 

tree = etree.parse('main.xml')
tree.xinclude()
print etree.tostring(tree)

XPointer xpointer()체계는 W3C 권장 사항의 상태에 도달 한 적이 없습니다 (여전히 작업 초안 임). libxml2 (lxml 뒤에있는 C 라이브러리)에서 구현되었지만 다른 곳에서는 거의 없습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

텍스트가 포함 된 CSS를 사용하여 요소 연결 및 관련 필드에 액세스

분류에서Dev

HTML 및 JS를 사용하여 URL을 통해 XML 파일에 액세스

분류에서Dev

xml.etree.ElementTree를 사용하여 태그 사이의 텍스트에 액세스하는 방법

분류에서Dev

Python ElementTree를 사용하여 XML 문서에서 텍스트 추출

분류에서Dev

node exec를 사용하여 Python 파일의 함수에 액세스

분류에서Dev

ConfigParser를 사용하여 python 파일의 .properties 파일에 저장된 속성에 액세스하는 방법

분류에서Dev

Python을 사용하여 xml 파일의 값에 액세스

분류에서Dev

IOS 배열 및 사전에 포함 된 값에 액세스

분류에서Dev

익명 액세스가 비활성화 된 경우 파일에 액세스하기 위해 사용자 이름 / 암호를 및 ASP 파일에 포함 할 수 있습니까?

분류에서Dev

Python의 ElementTree를 사용하여 XML에서 데이터 추출

분류에서Dev

Python에서 ElementTree를 사용하여 특정 xml 태그 제거

분류에서Dev

Python ElementTree를 사용하여 XML에서 값 가져 오기

분류에서Dev

ElementTree를 사용하여 Python에서 XML 구문 분석-Findall

분류에서Dev

python 2.7 lxml의 네임 스페이스를 사용하여 xml 파일의 값에 액세스

분류에서Dev

포인터를 사용하여 다른 컴파일 단위에서 정적 변수 액세스 및 변경

분류에서Dev

txt 파일의 포인터를 사용하여 메모리에 데이터 저장 및 액세스

분류에서Dev

밑줄이 포함 된 변수를 사용하여 개체 속성에 액세스하는 방법

분류에서Dev

Python에서 ElementTree를 사용하여 네임 스페이스로 XML 구문 분석

분류에서Dev

Python 및 ElementTree를 사용하여 <? xml version = "1.0"encoding = "UTF-8"?>의 루트 xml 요소를 감지하는 방법

분류에서Dev

ElementTree를 사용할 때 XML 노드의 데이터에 액세스하려면 어떻게해야합니까?

분류에서Dev

Python에서 XPATH를 사용하여 자식 XML 요소에 액세스

분류에서Dev

jquery를 사용하여 XML 액세스 및 배열로 읽기

분류에서Dev

xsl을 사용하여 xml 파일에서 포함 된 이미지를 읽는 방법

분류에서Dev

xpath 및 python을 사용하여 원하지 않는 BR 태그가 포함 된 태그간에 텍스트를 추출하는 방법은 무엇입니까?

분류에서Dev

ElementTree를 사용하여 XML 파일 수정

분류에서Dev

ElementTree를 사용하여 기존 XML 파일에 새 하위 요소 추가

분류에서Dev

JSON을 사용하여 mongodb의 포함 된 문서에 액세스

분류에서Dev

ElementTree Amazon API를 사용하는 python xml 파서

분류에서Dev

python (pymongo)를 사용하여 mongodb에 포함 된 문서 편집

Related 관련 기사

  1. 1

    텍스트가 포함 된 CSS를 사용하여 요소 연결 및 관련 필드에 액세스

  2. 2

    HTML 및 JS를 사용하여 URL을 통해 XML 파일에 액세스

  3. 3

    xml.etree.ElementTree를 사용하여 태그 사이의 텍스트에 액세스하는 방법

  4. 4

    Python ElementTree를 사용하여 XML 문서에서 텍스트 추출

  5. 5

    node exec를 사용하여 Python 파일의 함수에 액세스

  6. 6

    ConfigParser를 사용하여 python 파일의 .properties 파일에 저장된 속성에 액세스하는 방법

  7. 7

    Python을 사용하여 xml 파일의 값에 액세스

  8. 8

    IOS 배열 및 사전에 포함 된 값에 액세스

  9. 9

    익명 액세스가 비활성화 된 경우 파일에 액세스하기 위해 사용자 이름 / 암호를 및 ASP 파일에 포함 할 수 있습니까?

  10. 10

    Python의 ElementTree를 사용하여 XML에서 데이터 추출

  11. 11

    Python에서 ElementTree를 사용하여 특정 xml 태그 제거

  12. 12

    Python ElementTree를 사용하여 XML에서 값 가져 오기

  13. 13

    ElementTree를 사용하여 Python에서 XML 구문 분석-Findall

  14. 14

    python 2.7 lxml의 네임 스페이스를 사용하여 xml 파일의 값에 액세스

  15. 15

    포인터를 사용하여 다른 컴파일 단위에서 정적 변수 액세스 및 변경

  16. 16

    txt 파일의 포인터를 사용하여 메모리에 데이터 저장 및 액세스

  17. 17

    밑줄이 포함 된 변수를 사용하여 개체 속성에 액세스하는 방법

  18. 18

    Python에서 ElementTree를 사용하여 네임 스페이스로 XML 구문 분석

  19. 19

    Python 및 ElementTree를 사용하여 <? xml version = "1.0"encoding = "UTF-8"?>의 루트 xml 요소를 감지하는 방법

  20. 20

    ElementTree를 사용할 때 XML 노드의 데이터에 액세스하려면 어떻게해야합니까?

  21. 21

    Python에서 XPATH를 사용하여 자식 XML 요소에 액세스

  22. 22

    jquery를 사용하여 XML 액세스 및 배열로 읽기

  23. 23

    xsl을 사용하여 xml 파일에서 포함 된 이미지를 읽는 방법

  24. 24

    xpath 및 python을 사용하여 원하지 않는 BR 태그가 포함 된 태그간에 텍스트를 추출하는 방법은 무엇입니까?

  25. 25

    ElementTree를 사용하여 XML 파일 수정

  26. 26

    ElementTree를 사용하여 기존 XML 파일에 새 하위 요소 추가

  27. 27

    JSON을 사용하여 mongodb의 포함 된 문서에 액세스

  28. 28

    ElementTree Amazon API를 사용하는 python xml 파서

  29. 29

    python (pymongo)를 사용하여 mongodb에 포함 된 문서 편집

뜨겁다태그

보관