Elementree and insert new element if it is not present

T

Tharanga Abeyseela

Hi,

I have the following xml,a nd i need to add Description element if it is
not present.

<TVSeries><Provider>xxx</Provider><Title>X</Title><SortTitle>World's
Fastest Indian, The</SortTitle></TvSeries>
<Movies><Provider>xxx</Provider><Title>The World's Fastest
Indian</Title><Description> The World's Fastest Indian
</Description><SortTitle>World's Fastest Indian,
The</SortTitle></Movies>

here is my function.

def insert_description(root,type):
for child in root.findall('.//{
http://schemas.microsoft.com/xxx/2011/06/13/ingest}%s' % type):
title=child.find('.//{
http://schemas.microsoft.com/xxx/2011/06/13/ingestion}Title').text
try:
if child.find('Description') is None:
new_desc = ET.Element('Description')
new_desc.text = title
child.insert(1, new_desc)

except:
pass

root is the xm lfile, type includes (movies,shows,dramas etc)

But this will add the description without checking the "Description" is
exist. i have a problem with the following statement. (i guess)

if child.find('Description') is None:

what i'm doing wrong here, appreciate your help

Regards,
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

Members online

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,901
Latest member
Noble71S45

Latest Threads

Top