系列文章目录
Beautiful Soup教程-简介及安装
Beautiful Soup教程-基本使用
Beautiful Soup教程-认识选择器
Beautiful Soup教程-节点选择器之选择元素的方法
Beautiful Soup教程-节点选择器之提取信息的方法
Beautiful Soup教程-节点选择器之嵌套选择的方法
Beautiful Soup教程-节点选择器之关联选择的方法
Beautiful Soup教程-方法选择器
Beautiful Soup教程-CSS选择器
前言
Beautiful Soup是Python的一个网页解析库,处理快捷; 支持多种解析器,功能强大。教程细致讲解Beautiful Soup的深入使用、节点选择器、CSS选择器、Beautiful Soup4的方法选择器等重要知识点,是学好爬虫的基础课程。
节点选择器——嵌套选择的方法
学习目标
- 掌握节点选择器嵌套选择的方法
1. 嵌套选择的方法
我们可以使用soup.tag
获取bs4.element.Tag
类型的节点,并获取他们的信息。
<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>
如果提取到的节点中还嵌套这其他子节点
<head><title>The Dormouse's story</title></head>
那我们就可以通过下面的操作方式来获取子节点的信息。
格式:soup.tag.tag
返回值:节点元素
示例:
html = '''
<div class="panel">
<div class="panel-heading">
<h4>Hello</h4>
</div>
<div class="panel-body">
<ul class="list" id="list-1">
<li class="element"> Foo</li>
<li class="element">Bar</li>
<li class="element">]ay</li>
</ul>
<ul class="list list-small" id="list-2">
<li class="element"> Foo</li>
<li class="element">Bar</li>
</ul>
</div>
</div>
from bs4 import BeautifulSoup
soup = BeautifulSoup(html_str, 'lxml')
# 获取title
print(soup.head.title)
# 打印获取到的title类型
print(type(soup.head.title))
# 获取title的信息
print(soup.head.title.string)
# 输出结果
<title>The Dormouse's story</title>
<class 'bs4.element.Tag'>
The Dormouse's story
2. 总结
节点选择器 嵌套选择的方法:
- soup.tag.tag
- 在Tag类型的基础上再次选择得到的依然是Tag类型,每次返回的结果相同,就可以进行嵌套选择了