gpt4 book ai didi

python - lxml:通过XSLT将XML转换为HTML并获取HtmlElements

转载 作者:数据小太阳 更新时间:2023-10-29 02:41:12 26 4
gpt4 key购买 nike

我有一个 XML 文件形式的数据。我还获得了一个 XSLT 来将 XML 转换为 HTML。我可以使用 lxml 来执行转换,但是,我想在转换后更改一些 HTML 标记。如何将这个新的 etree 转换为 HtmlElements,以便我可以专门使用某些方法,如 .cssselect() 等。

最佳答案

>>> import lxml.etree
>>> import lxml.html
>>>
>>> xmlstring = '''\
... <?xml version='1.0' encoding='ASCII'?>
... <root><a class="here">link1</a><a class="there">link2</a></root>
... '''
>>> root = lxml.etree.fromstring(xmlstring)
>>> root.cssselect('a.here')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'lxml.etree._Element' object has no attribute 'cssselect'

lxml.etree.tostring(根) -> lxml.html.fromstring(..)

>>> root = lxml.html.fromstring(lxml.etree.tostring(root))
>>> root.cssselect('a.here')
[<Element a at 0x2989308>]

获取 XML 输出:

>>> print lxml.etree.tostring(root, xml_declaration=True)
<?xml version='1.0' encoding='ASCII'?>
<root><a class="here">link1</a><a class="there">link2</a></root>

关于python - lxml:通过XSLT将XML转换为HTML并获取HtmlElements,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17239607/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com