1
我试图更新的iTunes播客XML,需要把第一项目标签上面的信息LXML。我已经尝试使用minidom和lxml.etree,但似乎无法深入到足以开始插入我需要的地方。这里是XML和我最近尝试过的代码,因为lxml将子节点转换为列表,所以出错。插入孙子节点间使用Python
<?xml version='1.0' encoding='UTF-8'?>
<rss xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" version="2.0">
<channel>
<title>Title</title>
<link>weblink</link>
<language>en-us</language>
<copyright>Copyright</copyright>
<itunes:subtitle>Subtitle</itunes:subtitle>
<itunes:author>Author</itunes:author>
<itunes:summary>Summary</itunes:summary>
<description>Description</description>
<itunes:owner>
<itunes:name>Owner Name</itunes:name>
<itunes:email>Owner email</itunes:email>
</itunes:owner>
<itunes:image image.jpg"/>
<itunes:category text="MISC">
<itunes:category text="MISC"/>
</itunes:category>
<itunes:block>no</itunes:block>
<itunes:explicit>no</itunes:explicit>
<item>
<title>First Entry</title>
<itunes:author>Author</itunes:author>
<itunes:subtitle>Just Another Entry</itunes:subtitle>
<itunes:summary>Podcast Summary.</itunes:summary>
<enclosure url="url_to_mp3" length="48412967" type="audio/mpeg"/>
<guid>url_to_mp3</guid>
<pubDate>Sun, 12 Oct 2014 12:00:00 -0500</pubDate>
<itunes:duration>00:50:26</itunes:duration>
<itunes:block>no</itunes:block>
<itunes:explicit>no</itunes:explicit>
</item>
我当前的代码:
from lxml import etree
tree = etree.parse(file)
root = tree.getroot()
child = root.getchildren()
child.insert(13, etree.Element('item'))
child[13].insert(0, etree.SubElement(child[13], 'title'))
感谢您的帮助,您可以提供。