1、
from lxml import etree import StringIO f = 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].tag print r[0].text,r[1].text
2、
from lxml import etree root = etree.Element("root") print root.tag root.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].tag print [c.tag for c in root]3、from lxml import etree root = 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 etree root = 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.text print root.xpath("//text()")5、from lxml import etree root = etree.XML('<root><a><b/></a></root>') print etree.tostring(root,xml_declaration=True,encoding='utf-8',pretty_print=True)6、from lxml import etree xml_msg = "<root>data</root>" root = etree.fromstring(xml_msg) print len(root) print root.tag print root.text
7、
from lxml import etree from StringIO import StringIO my_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].text print result