简体   繁体   English

将lxml.etree.element类重新定义为不带名称空间的显示标签

[英]redefine lxml.etree.element class to showup tag without namespace

I'm new to python, and I wouldlike to redefine the etree.element object, in order to let the "tag" attribut show up the tag without namespace... 我是python的新手,我想重新定义etree.element对象,以使“标签”属性显示不带名称空间的标签...

I tried something like : 我尝试了类似的东西:

class _Element(lxml.etree._Element):
...
       tag=tag.rsplit('}', 1)[-1]

But Its not working, I can't see and modify the Element object, I only see the Element() method... 但是它不起作用,我看不到和修改Element对象,只看到Element()方法...

Any Idea how I can do that in a clever way ? 知道我如何才能巧妙地做到这一点吗?

检出文档中的方法“ cleanup_namespaces()”似乎可以满足您的要求。

Use Qname ( from Nick Byrne's blog ): 使用Qname来自Nick Byrne的博客 ):

from lxml.etree import QName

QName(elem.tag).localname

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM