Remove parent node -namespace issue

T

Tharanga Abeyseela

Hi All,

I have the following xml file and trying to search the word NC and
remove the grand-parent node from the xml file and write the new
result to a new xml.


<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<Feed xmlns="http://schemas.xxxx.xx/xx/2011/06/13/xx">
<TVEpisode>
<Provider>0x5</Provider>
<ItemId>http://fxxxxxxl</ItemId>
<Title>WWE</Title>
<SortTitle>WWE </SortTitle>
<Description>WWE</Description>
<IsUserGenerated>false</IsUserGenerated>
<Images>
<Image>
<ImagePurpose>BoxArt</ImagePurpose>
<Url>https://xxxxxx.xx/@006548-thumb.jpg</Url>
</Image>
</Images>
<LastModifiedDate>2012-10-16T00:00:19.814+11:00</LastModifiedDate>
<Genres>
<Genre>xxxxx</Genre>
</Genres>
<ParentalControl>
<System>xxxx</System>
<Rating>M</Rating>

if i find the following match , i need to delete the <TVEpisode> or
the other relevant node (ex <Movies>,<TVShows>) from the xml file ,
finally need to write the new xml file.

<Rating>NC</Rating>

here is my code, i can find all NC words, but i cant delete the
relevant parent node. i was using root.remove(elt) but it didnt work.
is this a problem with namespace ?


#!/usr/bin/env python
import elementtree.ElementTree as ET

tree = ET.parse('test.xml')
root = tree.getroot()
walkAll = tree.getiterator()

for elt in walkAll:

if elt.tag[0] == '{':
elt.tag = elt.tag.split('}', 1)[1]
for x in
elt.findall('.//{http://schemas.XXX.com/XXXX/2011/06/13/ingestion}Rating'):
print x.text
if x.text=="NC":
print "Found"
root.remove(elt) ###### deleting
the root node

else:
tree.write('out.xml') ## write the new xml with
correct data


Can someone please explain the parent node removing method and writing
to the new xml file method.
~
thanks in advance
Tharanga
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Similar Threads


Members online

Forum statistics

Threads
473,764
Messages
2,569,564
Members
45,041
Latest member
RomeoFarnh

Latest Threads

Top