Мой файл XML выглядит следующим образом:Использование XPath в ElementTree
<?xml version="1.0"?>
<ItemSearchResponse xmlns="http://webservices.amazon.com/AWSECommerceService/2008-08-19">
<Items>
<Item>
<ItemAttributes>
<ListPrice>
<Amount>2260</Amount>
</ListPrice>
</ItemAttributes>
<Offers>
<Offer>
<OfferListing>
<Price>
<Amount>1853</Amount>
</Price>
</OfferListing>
</Offer>
</Offers>
</Item>
</Items>
</ItemSearchResponse>
Все, что я хочу сделать, это извлечь ListPrice.
Это код, я использую:
>> from elementtree import ElementTree as ET
>> fp = open("output.xml","r")
>> element = ET.parse(fp).getroot()
>> e = element.findall('ItemSearchResponse/Items/Item/ItemAttributes/ListPrice/Amount')
>> for i in e:
>> print i.text
>>
>> e
>>
Абсолютно не выход. Я также пробовал
>> e = element.findall('Items/Item/ItemAttributes/ListPrice/Amount')
Без разницы.
Что я делаю неправильно?
Огромное спасибо. Я собирался несколько раз ударить головой о стену. –
Нет проблем, они должны привести пример с пространствами имен в своей документации для find и findall. –
ну, они могли бы сделать это более ясным в документации ... спасибо! – jorrebor