<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<Catalog>
<CatalogItemLine>
<NameValue name="Car_id">111-2020-3</NameValue>
<NameValue name="Car Name">Honda Accord</NameValue>
<NameValue name="Price at location 98134">40000</NameValue>
<NameValue name="type">Gas</NameValue>
<NameValue name="Mpg">30</NameValue>
<NameValue name="color">blue</NameValue>
<NameValue name="door">4</NameValue>
</CatalogItemLine>
<CatalogItemLine>
<NameValue name="Car_id">121-2020-3</NameValue>
<NameValue name="Car Name">Honda Civic</NameValue>
<NameValue name="Price at location 98134">30000</NameValue>
<NameValue name="type">Gas</NameValue>
<NameValue name="Mpg">35</NameValue>
<NameValue name="color">white</NameValue>
<NameValue name="door">2</NameValue>
</CatalogItemLine>
<CatalogItemLine>
<NameValue name="Car_id">131-2020-3</NameValue>
<NameValue name="Car Name">Toyota Camry</NameValue>
<NameValue name="Price at location 98134">45000</NameValue>
<NameValue name="type">Gas</NameValue>
<NameValue name="Mpg">32</NameValue>
<NameValue name="color">black</NameValue>
<NameValue name="door">4</NameValue>
</CatalogItemLine>
<CatalogItemLine>
<NameValue name="Car_id">151-2020-3</NameValue>
<NameValue name="Car Name">Honda Pilot</NameValue>
<NameValue name="Price at location 98134">50000</NameValue>
<NameValue name="type">Gas</NameValue>
<NameValue name="Mpg">30</NameValue>
<NameValue name="color">gray</NameValue>
<NameValue name="door">4</NameValue>
</CatalogItemLine>
<CatalogItemLine>
<NameValue name="Car_id">101-2020-3</NameValue>
<NameValue name="Car Name">Chevy Malibu</NameValue>
<NameValue name="Price at location 98134">40000</NameValue>
<NameValue name="type">Gas</NameValue>
<NameValue name="Mpg">30</NameValue>
<NameValue name="color">white</NameValue>
<NameValue name="door">4</NameValue>
</CatalogItemLine>
</Catalog>
I am trying to fetch the data which contains keyword "Honda" in xml file. Only trying to fetch (Car_id, Car Name, Price at location 98134, Mpg). Output I want to get is:
**Car_id
111-2020-3
Car Name
Honda Accord
Price at location 98134
40000
Mpg
30
Car_id
121-2020-3
Car Name
Honda Civic
Price at location 98134
30000
Mpg
35
Car_id
151-2020-3
Car Name
Honda Pilot
Price at location 98134
50000
Mpg
30**
Code:
import xml.etree.ElementTree as ET
xmlfile= ('cardata.xml')
tree = ET.parse(xmlfile)
root = tree.getroot()
for CatalogItemLine in root.findall('.//CatalogItemLine'):
if CatalogItemLine.find('NameValue') is not None:
NameValue = CatalogItemLine.find('NameValue')
if NameValue.text is not None:
if "Honda" in NameValue.text:
print(CatalogItemLine.find('NameValue').text)
I was unable to get output, I just started learning and using python and XML.
I am trying to fetch the data which contains keyword "Honda" in xml file.
Only trying to fetch the following data (Car_id, Car Name, Price at location 98134, Mpg).
Highly appreciate your HELP.