[英]Finding end tags with Python ElementTree XML API
解析某些XML時,我想確定是否遇到特定元素的結束標記。 是否可以通過ElementTree XML API?
樣本XML:
<data>
<folder name="a">
<folder name="b">
<file name="a1">
</file>
</folder>
<file name="b2">
</file>
</folder>
</data>
例如:在上面的XML中訪問<file name="b2">
,我希望能夠知道已經遇到</folder>
。
只需使用ElementTree.fromstring()
假設您的xml文件是這樣的:
xml1.xml
<?xml version="1.0" encoding="UTF-8"?>
<data>
<folder name="a">
<folder name="b">
<file name="a1">
</file>
</folder>
<file name="b2">
</file>
</folder>
</data>
xml2.xml
<?xml version="1.0" encoding="UTF-8"?>
<data>
<folder name="a">
<folder name="b">
<file name="a1">
</file>
</folder>
<file name="b2">
</file>
</data>
當您調用ElementTree.fromstring(open('xml1.xml').read())
,它將正確完成。 當您調用ElementTree.fromstring(open('xml2.xml').read())
,它將引發錯誤,稱為xml.parsers.expat.ExpatError: mismatched tag
,這意味着您的文件夾標記不完整。
如果這回答了您的問題,請確認。 謝謝!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.