delete xml elements - using xpath search
Stefan Behnel
stefan_ml at behnel.de
Tue Oct 16 01:50:53 EDT 2012
Tharanga Abeyseela, 16.10.2012 05:57:
> i need to delete the following pattern and its parent node from my xml
> file (IF THE SEARCH STRING FOUND)
>
> <Rating>NC</Rating>
>
> if i find the above particular string , i need to delete the XML
> elements (parent of the <Rating> element. problem is i have different
> parent nodes with different names..
>
> like
>
> <movies>
> <name> xxx</name>
> <title>xxx </title>
> <Rating>NC</Rating>
> </movies>
>
> <tvshow>
> <name> </name>
> <title>xxx </title>
> <Rating>NC</Rating>
> </tvshow>
>
> <tvepisode>
> <name>xxx </name>
> <title>xxx </title>
> <Rating>M</Rating>
> </tvepisode>
>
>
> as an example, i need to remove <movies> section and <tvshow> section
> from my xml, (because it has the word NC) but need to keep <tvepisode>
>
> can someone point me to the correct direction, or code snippet
Use the xml.etree.ElementTree module. Just parse() in the file, iterate
over the nodes, use the findtext() method to search for the text of
"Rating" tags and compare it to "NC". Keep the nodes that don't match.
Stefan
More information about the Python-list
mailing list