python-lxml的demo

来源:互联网 发布:华为ff软件下载 编辑:程序博客网 时间:2024/05/08 00:43

1、

from lxml import etreeimport StringIOf = StringIO.StringIO('<foo><bar>aaa</bar><bar>bbb</bar></foo>')tree = etree.parse(f)r = tree.xpath('/foo/bar')print len(r)print r[0].tagprint r[0].text,r[1].text
2、
from lxml import etreeroot = etree.Element("root")print root.tagroot.append(etree.Element("child1"))root.append(etree.Element("child2"))child3 = etree.SubElement(root,"child3")child4 = etree.SubElement(child3,"child4")root.insert(4,etree.Element("aaa"))print etree.tostring(root,pretty_print=True)print len(root)print root[0].tagprint [c.tag for c in root]
3、
from lxml import etreeroot = etree.Element("root",list="2")root.insert(0,etree.Element("name",real="True"))age = etree.SubElement(root,"age")age.text="28"print etree.tostring(root)print root.keys()
4、
from lxml import etreeroot = etree.Element("root")name = etree.SubElement(root,"name")name.text = "test"age = etree.SubElement(root,"age")age.text = "18"print etree.tostring(root)print len(root)for r in root:    print r.tag,r.textprint root.xpath("//text()")
5、
from lxml import etreeroot = etree.XML('<root><a><b/></a></root>')print etree.tostring(root,xml_declaration=True,encoding='utf-8',pretty_print=True)
6、
from lxml import etreexml_msg = "<root>data</root>"root = etree.fromstring(xml_msg)print len(root)print root.tagprint root.text
7、
from lxml import etreefrom StringIO import StringIOmy_xml =  """<root><name>test</name><age>28</age></root>"""my_xslt = """<?xml version="1.0" encoding="UTF-8"?>  <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:cch="http://tempuri.org/" version="2.0">        <xsl:output method="text" version="1.0" encoding="UTF-8" indent="yes"/>        <xsl:template match="/">                <xsl:variable name="RESPSTRING" select="/root/name[text()]"/>                <xsl:text>name=</xsl:text><xsl:value-of select="$RESPSTRING"/>        </xsl:template></xsl:stylesheet>"""f = StringIO(my_xml)doc = etree.parse(f)#r = doc.xpath(my_xpath)xslt_root = etree.XML(my_xslt)transform = etree.XSLT(xslt_root)result = transform(doc)#print len(r)#print r[0].tag,r[0].textprint result

原创粉丝点击