很多网站请求后,返回的数据是嵌套在HTML格式中的。例如:5xclass.cn
对于这种情况想要提取其中的数据,常见有两种方法:
- 基于bs4模块(本节重点)
- 基于xpath模块
1.HTML格式
<div>
<h1 class="item">洪七公</h1>
<ul class="item">
<li>篮球</li>
<li>足球</li>
</ul>
<div id='x3'>
<span>5xclass.cn</span>
<a>pythonav.com</a>
</div>
</div>
可以根据 标签名称 或 标签属性 来实现直接或间接寻找标签。
2.bs4
基于bs4可以实现去HTML格式的包裹的数据库中快速提取我们想要的数据。
2.1 安装
pip3 install beautifulsoup4
或
pip3.11 install beautifulsoup4
2.2 使用
- 根据标签名称,获取标签(只获取找到的第1个)
from bs4 import BeautifulSoup
html_string = """<div>
<h1 class="item">洪七公</h1>
<ul class="item">
<li>篮球</li>
<li>足球</li>
</ul>
<div id='x3'>
<span>5xclass.cn</span>
<a href="www.xxx.com" class='info'>pythonav.com</a>
</div>
</div>"""
sou