我使用lxml生成一个RSS提要,最终用作播客。这意味着我需要添加像<itunes:duration>
和<itunes:subtitle>
这样的命名空间元素。但是我在试图弄清楚如何用lxml动态创建这样的元素时遇到了很多麻烦
如果我只是尝试:
from lxml import etree
element = etree.Element("itunes:duration")
我明白了:
ValueError: Invalid tag name 'itunes:duration'
接下来,我尝试了这个,然后靠近了一点:
from lxml import etree
etree.register_namespace("itunes", "http://www.itunes.com/dtds/podcast-1.0.dtd")
element = etree.Element("{itunes}duration")
print(etree.tostring(element).decode("utf-8"))
然而,这导致了这一结果:
<ns0:duration xmlns:ns0="itunes"/>
因此,尽管这比例外要好,但它显然仍然不正确。如何在标记名中创建带有itunes:
前缀的元素
尝试使用^{}
印刷品
你也可以用克拉克符号
相关问题 更多 >
编程相关推荐