最近需要用python处理一个简单的XML,因其格式较乱,恰巧为了测试BeautifulSoup,所以百度学习了下,发现大多数都是解析HTML的文章,所以翻文档大概笔记下,功能是实现了,但问题很多后期再说吧。
测试XML代码:
地址 北京西街 寡妇墙..... 姓名 小强 动物 人类 1
测试python代码
#coding=utf-8''' 简单测试BeautifulSoup解析XML'''from bs4 import BeautifulSoupimport re#使用BeautifulSoup以XML格式打开test.xml文件soup = BeautifulSoup(open('test.xml'),'xml')#格式化XML输出print soup.prettify()#查找所有叫param-value的tag子节点print "\n" + "*"*20 + "\n"print soup.find_all('param-value')print "\n" + "*"*20 + "\n"#打印出所有符合条件的子节点属性值for tag in soup.find_all('param-value'): print tag.text.strip()print "\n" + "*"*20 + "\n"#使用正则的方式查找符合条件的子节点for tag1 in soup.find_all(re.compile('param-value')): print tag1.text.strip()
输出结果
********************[ 地址 北京西街 寡妇墙..... 姓名 小强 动物 人类 1 北京西街 ,人类 ]********************北京西街人类********************北京西街人类