Hello, I'm attempting to generate a random story using xml as the document, and lxml as the parser. I want the document to be simplified before processing it further, and am very close to accomplishing my goal. Below is what I have so far. Any ideas on how to move forward?
The goal: read and edit xml file, replacing random elements with randomly picked content from within Completed: [x] read xml [x] access first random tag [x] pick random content within random item [o] need to replace <random> tag with picked contents xml sample: <contents>Here is some content.</contents> <random> <item><contents>Here is some random content.</contents></item> <item><contents>Here is some more random content.</contents></item> </random> <contents>Here is some content.</contents> Python code: from lxml import etree from StringIO import StringIO import random theXml = "<contents>Here is some content.</ contents><random><item><contents>Here is some random content.</ contents></item><item><contents>Here is some more random content.</ contents></item></random><contents>Here is some content.</contents>" f = StringIO(theXml) tree = etree.parse(f) r = tree.xpath('//random') if len(r) > 0: randInt = random.randInt(0,(len(r[0]) - 1)) randContents = r[0][randInt][0] #replace parent random tag with picked content here now that I have the contents tag randomly chosen, how do I delete the parent <random> tag, and replace it to look like this: final xml sample (goal): <contents>Here is some content.</contents> <contents>Here is some random content.</contents> <contents>Here is some content.</contents> Any idea on how to do this? So close! Thanks for the help in advance. :) -- http://mail.python.org/mailman/listinfo/python-list