【发布时间】:2018-05-07 12:17:40
【问题描述】:
我正在编写一个使用beautiful soup 解析xml 文档的python 脚本。一些文档包含名为“区域”的元素。由于某种原因,我无法终生正确解析这些元素。它们总是以空的<area/> 元素出现。
这是正在发生的事情的一个最小示例:
#!/usr/bin/python3.5
from bs4 import BeautifulSoup
xml = """""
<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
<root>
<areax>
foo
</areax>
<area>
bar
</area>
</root>
"""""
soup = BeautifulSoup (xml, "lxml")
print ("\n#### soup ####\n")
print (soup)
print ("\n#### areax ####\n")
areaxs = soup.find_all ("areax")
for areax in areaxs:
print (areax)
print ("\n### area ###\n")
areas = soup.find_all ("area")
for area in areas:
print (area)
输出:
#### soup ####
<html><body><p>""
<?xml version = '1.0' encoding = 'UTF-8' standalone = 'yes'?>
<root>
<areax>
foo
</areax>
<area/>
bar
</root>
</p></body></html>
#### areax ####
<areax>
foo
</areax>
### area ###
<area/>
元素名称“区域”是否以任何方式受到保护,还是我解析它的方式有其他问题?
【问题讨论】:
标签: python xml parsing beautifulsoup