【简介】
Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库。即HTML/XMLX的解析器。
它可以很好的处理不规范标记并生成剖析树(parse tree)。 它提供简单又常用的导航(navigating),搜索以及修改剖析树的操作。它可以大大节省你的编程时间。
【安装】
下载地址:点击打开链接
Linux平台安装:
如果你用的是新版的Debain或ubuntu,那么可以通过系统的软件包管理来安装:
$apt-getinstallPython-bs4
Beautiful Soup 4 通过PyPi发布,所以如果你无法使用系统包管理安装,那么也可以通过easy_install或pip来安装.包的名字是beautifulsoup4,这个包兼容Python2和Python3.
$easy_installbeautifulsoup4
$pipinstallbeautifulsoup4
(在PyPi中还有一个名字是BeautifulSoup的包,但那可能不是你想要的,那是Beautiful
Soup3的发布版本,因为很多项目还在使用BS3, 所以BeautifulSoup包依然有效。
但是如果你在编写新项目,那么你应该安装的beautifulsoup4)
如果你没有安装easy_install或pip,那你也可以下载BS4的源码,然后通过setup.py来安装。
$Pythonsetup.pyinstall
如果上述安装方法都行不通,Beautiful Soup的发布协议允许你将BS4的代码打包在你的项目中,这样无须安装即可使用.
作者在Python2.7和Python3.2的版本下开发Beautiful Soup, 理论上Beautiful Soup应该在所有当前的Python版本中正常工作
windows平台:
下载完成之后需要解压缩,假设放到D:/IT/Python27下。
运行cmd,切换到D:/IT/Python27/beautifulsoup4-4.3.2/目录下(根据自己解压缩后的目录和下载的版本号修改)。
运行命令:python setup.py build和python setup.py install
即可安装完毕<前提是你的python路径加入到环境变量中了>
【案例】
下面的一段HTML代码将作为例子被多次用到.这是爱丽丝梦游仙境的的一段内容(以后内容中简称为爱丽丝的文档):
html_doc = """
<html><head><title>The Dormouse's story</title></head>
<body>
<p class="title"><b>The Dormouse's story</b></p>
<p class="story">Once upon a time there were three little sisters; and their 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> and
<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解析这段代码,能够得到一个BeautifulSoup的对象,并能按照标准的缩进格式的结构输出:
from bs4 import BeautifulSoup
soup = BeautifulSoup(html_doc)
print(soup.prettify())
# <html>
# <head>
# <title>
# The Dormouse's story
# </title>
# </head>
# <body>
# <p class="title">
# <b>
# The Dormouse's story
# </b>
# </p>
# <p class="story">
# Once upon a time there were three little sisters; and their names were
# <a class="sister" href="http://example.com/elsie" id="link1">
# Elsie
# </a>
# ,
# <a class="sister" href="http://example.com/lacie" id="link2">
# Lacie
# </a>
# and
# <a class="sister" href="http://example.com/tillie" id="link2">
# Tillie
# </a>
# ; and they lived at the bottom of a well.
# </p>
# <p class="story">
# ...
# </p>
# </body>
# </html>
几个简单的浏览结构化数据的方法:
soup.title
# <title>The Dormouse's story</title>
soup.title.name
# u'title'
soup.title.string
# u'The Dormouse's story'
soup.title.parent.name
# u'head'
soup.p
# <p class="title"><b>The Dormouse's story</b></p>
soup.p['class']
# u'title'
soup.a
# <a class="sister" href="http://example.com/elsie" id="link1">Elsie</a>
soup.find_all('a')
# [<a class="sister" href="http://example.com/elsie" id="link1">Elsie</a>,
# <a class="sister" href="http://example.com/lacie" id="link2">Lacie</a>,
# <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>]
soup.find(id="link3")
# <a class="sister" href="http://example.com/tillie" id="link3">Tillie</a>
从文档中找到所有<a>标签的链接:
for link in soup.find_all('a'):
print(link.get('href'))
# http://example.com/elsie
# http://example.com/lacie
# http://example.com/tillie
从文档中获取所有文字内容:
print(soup.get_text())
# The Dormouse's story
#
# The Dormouse's story
#
# Once upon a time there were three little sisters; and their names were
# Elsie,
# Lacie and
# Tillie;
# and they lived at the bottom of a well.
#
# ...
【如何使用】
链接地址:点击打开链接
分享到:
相关推荐
Beautiful Soup是Python中的一个强大的解析库,用于从HTML和XML文件中提取数据。Beautiful Soup可以遍历文档树,并从HTML文档中提取数据。使用Beautiful Soup解析HTML,可以避免繁琐的正则表达式,并且能够在文档...
python爬虫-Beautiful Soup库入门说明Beautiful Soup库安装Beautiful Soup库的引用Beautiful Soup库解析器Beautiful Soup类的基本元素例子tag标签tag的name(名字)tag的Attributes(属性)Tag的NavigableString...
Beautiful Soup是一款可以用Python写的一个HTML/XML的解析器工具,如果你需要在一些网站抓取数据,Beautiful Soup可以很好的处理不规范标记并生成剖析树,大大节省工程时间。需要此款工具的朋友们可以前来在使用。 ...
Beautiful Soup是一个可以从HTML或XML中提取数据的Python库。它可以通过你喜欢的转换器快速帮你解析并查找整个HTML文档。 Beautiful Soup自动将输入文档转为Unicode编码,输出文档转为UTF-8编码。因此你不需要考虑...
Beautiful Soup 是一个处理Python HTML/XML的模块
Beautiful Soup就是Python的一个HTML或XML的解析库,可以用它来方便地从网页中提取数据。它有如下三个特点: Beautiful Soup提供一些简单的、Python式的函数来处理导航、搜索、修改分析树等功能。它是一个工具箱,...
Beautiful Soup 是用Python 写的一个HTML/XML 的解析器,它可以很好的处理 不规范标记并生成剖析树(parse tree)。它提供简单又常用的导航 (navigating),搜索以及修改剖析树的操作。它可以大大节省你的编程时 间
Beautiful Soup是一个HTML/XML解析器,主要功能是解析和提取HTML/XML中的数据,提取数据时,类似于正则表达式的功能。Beautiful Soup将整个文档载入,解析整个DOM树,其时空开销都比较大,性能不如lxml。Beautiful ...
Beautiful Soup 是用 Python 写的一个 HTML/XML 的解析器,它可以很好的处理不规范标记并生成剖析树。通常用来分析爬虫抓取的web文档。 注意:为了解决乱码问题,用版本3的。如3.2.1。BeautifulSoup处理后的默认编码...
Beautiful Soup(美丽汤)是一个Python第三方库,用于从HTML和XML文件中提取数据。它与您最喜欢的解析器一起使用,提供了导航,搜索和修改解析树的惯用方式,点击此处进入官网。最新版本Beautiful Soup 4 简称bs4。...
文章目录Beautiful Soup4 简介Beautiful Soup4 解析器Beautiful Soup4 安装Beautiful Soup4 解析器安装Beautiful Soup4 简单使用Beautiful Soup4 四大对象TagNavigableStringBeautifulSoupComment Beautiful Soup4 ...
安装 通过 pip 安装 Beautiful Soup 模块:pip install ...我们能够使用 Beautiful Soup 模块从 HTML/XML 文档中提取任何数据,例如,网页中的所有链接或者标签内的内容。 为了实现这一点,Beautiful Soup 提供了不
Beautiful Soup是用Python写的一个HTML/XML的解析器,它可以很好的处理不规范标记并生成剖析树(parsetree)。 它提供简单又常用的导航(navigating),搜索以及修改剖析树的操作。它可以大大节省你的编程时间。 对于...
Beautiful Soup是一款高效的Python网页解析分析工具,可以用于解析HTL和XML文件并从中提取数据。 Beautiful Soup输入文件的默认编码是Unicode,输出文件的编码是UTF-8。 Beautiful Soup具有将输入文件自动补全的...
Beautiful Soup 是一个可以从 HTML 或 XML 格式文件中提取数据的 Python 库,他可以将HTML 或 XML 数据解析为Python 对象,以方便通过Python代码进行处理。 文档环境 Centos7.5 Python2.7 BeautifulSoup4 ...
Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python 库。它能够通过你喜欢的转换器实现惯用的文档导航、查找、修改文档的方式。他还能够修改HTML/XML文档的内容。这篇文章主要介绍了Python利用Beautiful ...
Beautiful Soup 是一个可以从 HTML 或 XML 文件中提取数据的 Python 库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup 会帮你节省数小时甚至数天的工作时间
Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间. 这篇文档介绍了...
Beautiful Soup:Beautiful Soup是一个HTML/XML解析库,能够从网页中提取数据,并提供了简单易用的API操作。它适合用于静态网页的解析和数据提取。 Requests:Requests是一个Python HTTP库,可以方便地发送HTTP请求...