温馨提示×

lxml如何将XML分解成多个独立的模式文件

小亿
84
2024-05-15 16:33:23
栏目: 编程语言

要将XML文件分解成多个独立的模式文件,可以使用lxml库中的ETXPath类和ElementTree类。以下是一个简单的示例代码来演示如何将XML文件分解成多个模式文件:

```python

from lxml import etree

# 加载XML文件

tree = etree.parse('input.xml')

# 获取根节点

root = tree.getroot()

# 获取所有模式节点

patterns = root.xpath('//pattern')

# 将每个模式保存到独立的文件中

for i, pattern in enumerate(patterns):

# 创建一个新的ElementTree对象

new_tree = etree.ElementTree(pattern)

# 将模式保存到文件中

new_tree.write(f'pattern_{i}.xml', pretty_print=True)

```

在上面的代码中,我们首先使用`etree.parse`函数加载XML文件,然后使用`xpath('//pattern')`方法获取所有模式节点。接下来,我们遍历每个模式节点,创建一个新的ElementTree对象并将该模式保存到一个独立的文件中。

运行代码后,将生成多个名为`pattern_0.xml`、`pattern_1.xml`等的模式文件,每个文件包含一个独立的模式节点。

0