我可以使用xml.etree.ElementTree中的element.findall()在單個屬性中查找具有多個值的元素嗎?找到具有多個值的xml元素
我可以用它來找到所有的div元素帶有class =「日」:
from xml.etree.ElementTree import ElementTree
calendar = ElementTree()
calendar.parse("calendar-week.xml")
calendar.findall('.//div[@class="day"]')
或此找到所有與類=「第一天」的div元素的:
calendar.findall('.//div[@class="first day"]')
但有沒有辦法找到他們班有「日」的所有div元素?我找不到有關如何執行此操作的任何文檔。有沒有在這裏使用正則表達式的方法?
<body>
<div class="calendar-week">
<div class="first day" id="su">Sunday</div>
<div class="day" id="mo">Monday</div>
<div class="day" id="tu">Tuesday</div>
<div class="day" id="we">Wednesday</div>
<div class="day" id="th">Thursday</div>
<div class="day" id="fr">Friday</div>
<div class="last day" id="sa">Saturday</div>
<div class="clear-float"></div>
</div><!-- /calendar-week -->
</body>
在回答中提供的XPath的長期找到[這裏]( http://stackoverflow.com/questions/1390568/xpath-how-to-match-attributes-that-contain-a-certain-string)與更多的例子像@stranac的一個,但沒有一個使用xml.etree。 ElementTree的。也許xml.etree不支持所有的xpath選項? – dansalmo 2012-07-05 21:47:57