Actuvally am having below XML File:
<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<c:RetriveByVehicleLineModelYearResponse xmlns:a="urn:ford/VehicleOrder/LegacyFeatureMapping/v2.0" xmlns:b="urn:ford/VehicleOrder/SingleOrderEdit/v1.0" xmlns:c="urn:ford/interface/VehicleOrder/LegacyFeatureMapping/v2">
<c:PortInstalledOptionFeature>
<a:VehicleLineId>13001</a:VehicleLineId>
<a:ModelYear>2014</a:ModelYear>
<a:LegacyColumn>12</a:LegacyColumn>
<a:LegacyValue>178 </a:LegacyValue>
<a:SalesCode>W78</a:SalesCode>
<a:MappingId>41859</a:MappingId>
<a:MappingSeq>0</a:MappingSeq>
<a:MappingDirection>B</a:MappingDirection>
<a:TargetFeature>
<a:TargetCatgegory>
<a:Id>181</a:Id>
<a:Name>LIGHT TRUCK WHEELBASES </a:Name>
<a:Type>P</a:Type>
<a:FamilyCode>AA5</a:FamilyCode>
</a:TargetCatgegory>
<a:OrderFeatureId>15615</a:OrderFeatureId>
<a:WersCode>AA5K8</a:WersCode>
<a:OrderFeatureName>178 /4521MM WHEELBASE </a:OrderFeatureName>
<a:PIO>false</a:PIO>
<a:SummaryFeature>false</a:SummaryFeature>
</a:TargetFeature>
<a:TargetFeature>
<a:TargetCatgegory>
<a:Id>181</a:Id>
<a:Name>LIGHT TRUCK WHEELBASES </a:Name>
<a:Type>P</a:Type>
<a:FamilyCode>AA5</a:FamilyCode>
</a:TargetCatgegory>
<a:OrderFeatureId>15615</a:OrderFeatureId>
<a:WersCode>AA5K8_second time</a:WersCode>
<a:OrderFeatureName>178 /4521MM WHEELBASE </a:OrderFeatureName>
<a:PIO>false</a:PIO>
<a:SummaryFeature>false</a:SummaryFeature>
</a:TargetFeature>
</c:PortInstalledOptionFeature>
<c:PortInstalledOptionFeature>
<a:VehicleLineId>13001</a:VehicleLineId>
<a:ModelYear>2014</a:ModelYear>
<a:LegacyColumn>12</a:LegacyColumn>
<a:LegacyValue>190 </a:LegacyValue>
<a:SalesCode>W90</a:SalesCode>
<a:MappingId>41860</a:MappingId>
<a:MappingSeq>0</a:MappingSeq>
<a:MappingDirection>B</a:MappingDirection>
<a:TargetFeature>
<a:TargetCatgegory>
<a:Id>181</a:Id>
<a:Name>LIGHT TRUCK WHEELBASES </a:Name>
<a:Type>P</a:Type>
<a:FamilyCode>AA5</a:FamilyCode>
</a:TargetCatgegory>
<a:OrderFeatureId>15616</a:OrderFeatureId>
<a:WersCode>AA5MA</a:WersCode>
<a:OrderFeatureName>190 /4826MM WHEELBASE </a:OrderFeatureName>
<a:PIO>false</a:PIO>
<a:SummaryFeature>false</a:SummaryFeature>
</a:TargetFeature>
</c:PortInstalledOptionFeature>
</c:RetriveByVehicleLineModelYearResponse>
</soapenv:Body>
</soapenv:Envelope>
============================
My expected Output is:
WersCode
AA5K8
AA5MA
============== For this I have used below Code:
mport glob
import xml.etree.ElementTree as ET
Fatfile = open('#Var_SOE_VLIS_Response_Output\\Sales_to_Wers_Code2.txt', 'a')
try:
tree = ET.parse('#Var_ENG_Response_Files\\SoapResponse1.xml')
Fatfile.write('1111')
WersCodeList = tree.findall('./{urn:ford/VehicleOrder/LegacyFeatureMapping/v2.0}PortInstalledOptionFeature')
Fatfile.write('\n2222')
# x = len(WersCodeList)
# Fatfile.write(x)
Fatfile.write('\n333')
for WersCode in WersCodeList :
Fatfile.write('\n444')
WersCode = WersCode.find('.//{urn:ford/VehicleOrder/LegacyFeatureMapping/v2.0}WersCode')
Fatfile.write('\n')
Fatfile.write(WersCode.text)
except :
Fatfile.write(' \nsorry')
Fatfile.write(' \nSuccess')
====
But I could not able to get the WersCode List using Findall.
Please please please help on this .. am struggling sice one week sir...
Post by Peter OttenPost by Venugopal Reddy<?xml version="1.0"?>
<data>
<country name="Liechtenstein">
<rank>1</rank>
<year>2008</year>
<year>2009></year>
<gdppc>141100</gdppc>
<neighbor name="Austria" direction="E"/>
<neighbor name="Switzerland" direction="W"/>
</country>
<country name="Singapore">
<rank>4</rank>
<year>2011</year>
<gdppc>59900</gdppc>
<neighbor name="Malaysia" direction="N"/>
</country>
<country name="Panama">
<rank>68</rank>
<year>2011</year>
<gdppc>13600</gdppc>
<neighbor name="Costa Rica" direction="W"/>
<neighbor name="Colombia" direction="E"/>
</country>
</data>
Countryname Rank Year gdppc
Liechtenstein 1 2008 141100
Singapore 4 2011 59900
Panama 68 2011 13600
Please help how to do it..
http://pymotw.com/2/xml/etree/ElementTree/parse.html
You can load the data from the file with parse(), get the countries with
findall(), the name with country_node.attrib["name"], and rank, year and
gdppc with country_node.find("rank").text etc.
If you run into problems come back with some code of yours.