1、基础概念
前言:
Beautiful Soup 就是Python的一个HTML或XML的解析库,可以用它来方便地从网页中提取数据。
Beautiful Soup 已成为和lxml、html6lib一样出色的Python解释器,为用尸灵活地提供不同的解析策略或强劲的速度。
Beautiful Soup 自动将输入文档转换为Unicode编码,输出文档转换为UTF-8编码。
Beautiful Soup 的HTML和XML解析器是依赖于1xml库,所以需要确保lxml安装:pip install lxml ,常见错误提示:bs4 FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?卸载lxml:pip uninstall lxml ,再重装:pip install lxml,不行就重启pycharm.
Beautiful Soup 模块使用前需要确保安装,目前最新版本是4.x版本:pip install beautifulsoup4
Beautiful Soup 在解析数据时通常使用bs4,引入:from bs4 import BeautifulSoup
Beautiful Soup在解析时实际上依赖解析器,它除了支持Python标准库中的HTL解析器外,还支持一些第三方解析器(比如lxml)。
解析器:
Beautiful Soup在解析时实际上依赖解析器,它除了支持Python标准库中的HTL解析器外,还支持一些第三方解析器(比如lxml)。
解析器选择及使用方法:
通过以上对比可以看出,lxml解析器有解析HTML和XML的功能,而且速度快,容错能力强,通常使用lxml。
使用时,在初始化Beautiful Soup时把第二个参数改为1xml即可:
from bs4 import BeautifulSoup
soup=BeautifulSoup('<p>Hello</p>,‘1xml')
print(soup.p.string)
重点使用:
2、节点选择器
'''***********************************************节点选择器*********************************************************'''
from bs4 import BeautifulSoup
html = '''
<div>
<td class="nobr player desktop">
<a href="bucks" class&#