没有合适的资源?快使用搜索试试~ 我知道了~
BeautifulSoup用法详解1
需积分: 0 22 下载量 141 浏览量
2022-08-08
20:25:26
上传
评论 1
收藏 130KB DOCX 举报
温馨提示
试读
19页
Beautiful Soup 的用法上一节我们介绍了正则表达式,它的内容其实还是蛮多的,如果一个正则匹配稍有差池,那可能程序就处在永久的循环之中,而且有的小伙伴
资源推荐
资源详情
资源评论
Beautiful Soup 的用法
上一节我们介绍了正则表达式,它的内容其实还是蛮多的,如果一个正则匹配稍有差池,
那可能程序就处在永久的循环之中,而且有的小伙伴们也对写正则表达式的写法用得不熟
练,没关系,我们还有一个更强大的工具,叫 Beautiful Soup,有了它我们可以很方便
地提取出 HTML 或 XML 标签中的内容,实在是方便,这一节就让我们一起来感受一下
Beautiful Soup 的强大吧。
Beautiful Soup 的简介
简单来说,Beautiful Soup 是 python 的一个库,最主要的功能是从网页抓取数据。官
方解释如下:
Beautiful Soup 提供一些简单的、python 式的函数用来处理导航、搜索、修改分析树
等功能。它是一个工具箱,通过解析文档为用户提供需要抓取的数据,因为简单,所以不
需要多少代码就可以写出一个完整的应用程序。
Beautiful Soup 自动将输入文档转换为 Unicode 编码,输出文档转换为 utf-8 编码。
你不需要考虑编码方式,除非文档没有指定一个编码方式,这时,Beautiful Soup 就不
能自动识别编码方式了。然后,你仅仅需要说明一下原始编码方式就可以了。
Beautiful Soup 已成为和 lxml、html6lib 一样出色的 python 解释器,为用户灵活地
提供不同的解析策略或强劲的速度。
废话不多说,我们来试一下吧~
Beautiful Soup 安装
Beautiful Soup 3 目前已经停止开发,推荐在现在的项目中使用 Beautiful Soup 4,
不过它已经被移植到 BS4 了,也就是说导入时我们需要 import bs4 。所以这里我们用
的版本是 Beautiful Soup 4.3.2 (简称 BS4),另外据说 BS4 对 Python3 的支持不够
好,不过我用的是 Python2.7.7,如果有小伙伴用的是 Python3 版本,可以考虑下载
BS3 版本。
如果你用的是新版的 Debain 或 Ubuntu,那么可以通过系统的软件包管理来安装,不过
它不是最新版本,目前是 4.2.1 版本
sudo apt-get install Python-bs4
如果想安装最新的版本,请直接下载安装包来手动安装,也是十分方便的方法。在这里我
安装的是 Beautiful Soup 4.3.2
Beautiful Soup 3.2.1
Beautiful Soup 4.3.2
下载完成之后解压
运行下面的命令即可完成安装
sudo python setup.py install
如下图所示,证明安装成功了
然后需要安装 lxml
sudo apt-get install Python-lxml
Beautiful Soup 支持 Python 标准库中的 HTML 解析器,还支持一些第三方的解析器,
如果我们不安装它,则 Python 会使用 Python 默认的解析器,lxml 解析器更加强大,
速度更快,推荐安装。
开启 Beautiful Soup 之旅
在这里先分享官方文档链接,不过内容是有些多,也不够条理,在此本文章做一下整理方
便大家参考。
官方文档
创建 Beautiful Soup 对象
首先必须要导入 bs4 库
from bs4 import BeautifulSoup
我们创建一个字符串,后面的例子我们便会用它来演示
html = """
<html><head><title>The Dormouse's story</title></head>
<body>
<p class="title" name="dromouse"><b>The Dormouse's story</b></p>
<p class="story">Once upon a time there were three little sisters; and t
heir names were
<a href="http://example.com/elsie" class="sister" id="link1"><!-- Elsie
--></a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> a
nd
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>
;
and they lived at the bottom of a well.</p>
<p class="story">...</p>
"""
创建 beautifulsoup 对象
soup = BeautifulSoup(html)
另外,我们还可以用本地 HTML 文件来创建对象,例如
soup = BeautifulSoup(open('index.html'))
上面这句代码便是将本地 index.html 文件打开,用它来创建 soup 对象
下面我们来打印一下 soup 对象的内容,格式化输出
print soup.prettify()
<html>
<head>
<title>
The Dormouse's story
</title>
以上便是输出结果,格式化打印出了它的内容,这个函数经常用到,小伙伴们要记好咯。
四大对象种类
剩余18页未读,继续阅读
资源评论
叫我叔叔就行
- 粉丝: 23
- 资源: 323
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功