使用beautiful soup解析xml
Posted life is tough,so are you
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用beautiful soup解析xml相关的知识,希望对你有一定的参考价值。
比如解析name
authornamelist = soup.find_all(\'contrib\') for x in authornamelist: print x.surname.text print x.surname.next_sibling.next_sibling.text
surname.next_sibling实际上是换行符,所有用换行符的next_sibling
直接print x.given-names.text 无法解析given-names这种格式的
参考文献
.next_sibling 和 .previous_sibling
在文档树中,使用 .next_sibling 和 .previous_sibling 属性来查询兄弟节点:
sibling_soup.b.next_sibling
# <c>text2</c>
sibling_soup.c.previous_sibling
# <b>text1</b>
<b>标签有 .next_sibling 属性,但是没有 .previous_sibling 属性,因为<b>标签在同级节点中是第一个.同理,<c>标签有 .previous_sibling 属性,却没有.next_sibling 属性:
print(sibling_soup.b.previous_sibling)
# None
print(sibling_soup.c.next_sibling)
# None
例子中的字符串“text1”和“text2”不是兄弟节点,因为它们的父节点不同:
sibling_soup.b.string
# u\'text1\'
print(sibling_soup.b.string.next_sibling)
# None
以上是关于使用beautiful soup解析xml的主要内容,如果未能解决你的问题,请参考以下文章
python爬虫之Beautiful Soup库,基本使用以及提取页面信息
python爬虫之Beautiful Soup库,基本使用以及提取页面信息