Python爬虫-BeautifulSoup
“美丽汤”的爱恨
前边说偏爱xpath,在于操作简单,解析速度较快。但不可否认:BeautifulSoup比xpath稳定。但凡网页的标签顺序发生变化(增删改),基于xpath规则的提取方式极大可能就此失效,这样一来不得不“右键检查元素”,周而复始的修改xpath规则。而“美丽汤”提供了多种寻找标签方法,以图使用者达到最佳“确定标签”的目的,尽最大努力在网页发生改变的同时,旧代码仍然畅通无阻的运行。
可是成也萧何败萧何,考虑太多,“美丽汤”不得不显得“臃肿”,成为三个中解析速度中的最慢。然而比起令人生畏的正则,许多人也只好认了:“慢就慢吧”。
《Python网络数据采集》书中提到,BeautifulSoup一名源于《爱丽丝梦游仙境》里的同名诗歌。就突然好想去看,我说有空的话。
使用
关于环境安装的帖子网络上很容易找到,这里不提。
导包:from bs4 import BeautifulSoup
指定解析方式:soup = BeautifulSoup(response.text, "lxml")
或者页面写入本地,打开本地文件解析:soup = BeautifulSoup(open("xxxx"), "lxml")
爱丽丝文档示例
在一定的操作中以此范例文档试验(这是一个标签部分残缺的文档)
格式化输出:print(soup.prettify())
效果:
可以看到,经过处理后,原示例的残缺部分被填充完整。所以我们应该针对处理之后的示例采取相应的提取措施
标签
soup.a返回第一个a标签

本文详细介绍了Python爬虫库BeautifulSoup的使用,包括其稳定性、解析速度、标签查找方法、支持正则表达式及CSS选择器等功能,并通过实例展示了如何在网页抓取中灵活运用。
最低0.47元/天 解锁文章
399

被折叠的 条评论
为什么被折叠?



