Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Lxml:以字符串形式返回xml文件的一部分_Python_Xml_Xml Parsing_Lxml - Fatal编程技术网

Python Lxml:以字符串形式返回xml文件的一部分

Python Lxml:以字符串形式返回xml文件的一部分,python,xml,xml-parsing,lxml,Python,Xml,Xml Parsing,Lxml,我正在使用lxml解析器解析我的xml文件,如下所示: # some elements above <contact> <phonenumber> #something </phonenumber> </contact> #上面的一些元素 #某物 我希望能够只返回xml文件的一部分 假设我使用的是phonenumber,我希望lxml以字符串形式返回介于两者之间的所有内

我正在使用lxml解析器解析我的xml文件,如下所示:

    # some elements above
    <contact>
       <phonenumber>
            #something
       </phonenumber>
    </contact>
#上面的一些元素
#某物
我希望能够只返回xml文件的一部分

假设我使用的是phonenumber,我希望lxml以字符串形式返回介于两者之间的所有内容

我不想返回text b/w phonenumber,但返回整个字符串:

    <phonenumebr>something</phonenumber>
什么
可以吗?

要打印XML树的一部分,可以使用
lxml.etree.tostring
。在Python 2上:

In [1]: from lxml.etree import tostring, parse

In [2]: tree = parse('test.xml')

In [3]: elem = tree.xpath('//phonenumber')[0]

In [4]: print tostring(elem)
<phonenumber>
            something
       </phonenumber>
[1]中的
:从lxml.etree导入到字符串,解析
在[2]中:tree=parse('test.xml')
[3]中:elem=tree.xpath('//phonenumber')[0]
在[4]中:打印到字符串(elem)
某物
有关更多信息,请参阅