下面的 Python 代码适用于一个 XML。当我尝试打开并解析多个 XML 文件时,问题就出现了,这些文件具有相似的结构并保存在文件夹中(第 4 行 -> data = open('[0-9].xml',"rb")。我我正在尝试正则表达式,但我不确定这是否也适用于命名文档。
所有文档的名称为“11111.xml、22222.xml、33333.xml ...”等。
import xml.etree.ElementTree as ET
import re
data = open ('[0-9].xml',"rb")
tree = ET.parse (data)
lst_jugador = tree.findall('data_panel/players/player')
for jugador in lst_jugador:
print (jugador.find('name').text, jugador.get("id"))
Run Code Online (Sandbox Code Playgroud)
您可以使用glob模块。
import glob
import xml.etree.ElementTree as ET
filenames = glob.glob("[0-9].xml") # change the pattern to match your case
for filename in filenames:
with open(filename, 'r', encoding="utf-8") as content:
tree = ET.parse(content)
lst_jugador = tree.findall('data_panel/players/player')
for jugador in lst_jugador:
print (jugador.find('name').text, jugador.get("id"))
Run Code Online (Sandbox Code Playgroud)