我是python的新手,我想重新定义etree.element对象,以便让“tag”attribut显示没有命名空间的标记......
我尝试过类似的事情:
class _Element(lxml.etree._Element):
...
tag=tag.rsplit('}', 1)[-1]
但它无法正常工作,我看不到并修改了Element对象,我只看到了Element()方法......
任何想法我怎么能以聪明的方式做到这一点?
答案 0 :(得分:1)
签出方法" cleanup_namespaces()"在documentation中,似乎做了你想做的事。
答案 1 :(得分:0)
使用Qname
(from Nick Byrne's blog):
from lxml.etree import QName
QName(elem.tag).localname