我有一种 XML 文件,其中包含许多相关信息的记录,如下所示
<file>
<record>
<type>a</type>
<number>2</number>
</record>
<record>
<type>b</type>
<number>9</number>
</record>
等等
我希望 BS 读取所有 XML 文件并按列给我结果:
a2
b 9 等
编辑
谢谢大家的参与。我安装了 xml 解析器,我使用的是 bs4 xml 模式。我不再收到错误,但是我得到了:
抗体
2 9
代替
a2
b 9
新代码:
from bs4 import BeautifulSoup
soup = BeautifulSoup(open('file.xml'),"xml")
with open('output.txt') as f:
for type1,number in (soup.findall('type'),soup.findall('number')):
f.write ('%s\t%s\n' % (type1.text, number.text))
第二次编辑:
如果我在 XML 文件中添加第三条记录,我会收到以下错误
回溯(最近一次调用最后一次):文件“multixmlsript.py”,第 8 行,用于 type1,编号在(soup.findAll('type'),soup.findAll('number')):ValueError:值太多打开包装