,,Python BS4库的安装与使用详解

,,Python BS4库的安装与使用详解

本文主要介绍Python BS4库的安装和使用的详细说明。边肖认为这很好。现在分享给大家,给大家一个参考。来和边肖一起看看吧。

美汤库一般叫bs4库,支持Python3,是我们写爬虫非常好的第三方库。因为用起来非常简单流畅。所以也叫“好喝的汤”。bs4库的最新版本是4.60。下面会描述库最基本的用法,但具体细节还是要看:【美汤文档】。

bs4库的安装

Python的优势在于它是一种开源语言,很多开发者都为它开发了第三方库。这样,当我们开发者想要实现某个功能的时候,只要专心实现某个特定的功能,其他的细节和基础部分都可以交给库。Bs4库是我们写爬虫的有力帮手。

安装方法很简单:我们使用pip工具在命令行上安装。

$ pip安装beautifulsoup4

让我们看看bs4库是否已经成功安装。

$ pip列表

于是我们成功安装了bs4库。

bs4库的简单使用

在这里,我们简单说明一下bs4库的使用方法。

暂时不要考虑如何从网上抓取网页,

假设我们需要抓取的html如下:

作为示例,下面的HTML代码将被多次使用。这是《爱丽丝梦游仙境》(以下简称爱丽丝文档)中的一段话:

睡鼠的故事/标题/头像

身体

睡鼠的故事

从前有三个小姐妹;他们的名字是

http://example.com/elsie'埃尔西,

http://example.com/lacie'莱西和

http://example.com/tillie'蒂莉;

他们住在井底。/p

故事./p

/html

让我们开始用bs4库解析这段html网页代码。

#导入bs4模块

从bs4导入BeautifulSoup

#做一道美味的汤

soup=BeautifulSoup(html,' html.parser ')

#输出结果

print(soup . pretify())

'''

出局:

# html

#头

#标题

#睡鼠的故事

#/标题

#/头

#正文

# p class='标题'

# b

#睡鼠的故事

# /b

# /p

# p class='故事'

#从前有三个小姐妹;他们的名字是

# a class=' sis ter ' href=' http://example . com/elsie ' rel=' external no follow ' id=' link 1 '

#埃尔西

# /a

# ,

# a class=' sis ter ' href=' http://example . com/lacie ' rel=' external no follow ' id=' link 2 '

# Lacie

# /a

#还有

# a class=' sis ter ' href=' http://example . com/tillie ' rel=' external no follow ' id=' link 2 '

#蒂莉

# /a

# ;他们住在井底。

# /p

# p class='故事'

# .

# /p

# /body

# /html

'''

可以看到bs4库已经把网页文件变成了soup类型,

事实上,bs4库 是解析、遍历、维护、“标签树“的功能库。

通俗地说,bs4库将html源代码重新格式化,

从而方便我们操作节点、标签、属性等。

以下是浏览结构化数据的几种简单方法:

请仔细观察前面的html文件。

#查找文档的标题

汤.标题

# title睡鼠的故事/标题

#title的名称值

soup.title.name

# u'title '

#title中的# String字符串

汤.标题.字符串

#睡鼠的故事'

#title的父节点的名称属性

soup.title.parent.name

#你的头'

#文档中找到的第一个段落

汤. p

睡鼠的故事

找到p的# class属性值

汤,汤

# u'title '

#找到A标签

# http://example.com/elsie' id=' link 1 '埃尔希

#找到所有的A标签

soup.find_all('a ')

#[http://example.com/elsie' id=' link 1 '埃尔西,

# http://example.com/lacie' id=' link 2 ' Lacie,

# http://example.com/tillie' id=' link 3 '蒂莉]

#找到id值等于3的标签A

soup.find(id='link3 ')

# http://example.com/tillie' id=' link 3 '蒂莉

通过上面的例子,我们知道bs4库是这样理解一个html源文件的:

首先,将html源文件转换成soup类型。

然后用特定的方式抓取内容。

更高级点的用法?

查找文档中所有A标签的链接:

#你发现了吗?find_all方法返回一个可以迭代的列表。

对于soup.find_all('a ')中的链接:

print(link.get('href '))

# http://example.com/elsie

# http://example.com/lacie

# http://example.com/tillie

从文档中获取所有文本内容:

#我们可以通过get_text方法快速获取源文件中的所有文本内容。

print(soup.get_text())

#睡鼠的故事

#

#睡鼠的故事

#

#从前有三个小姐妹;他们的名字是

#埃尔西,

# Lacie和

#蒂莉;

#他们住在井底。

#

# .

bs4库的介绍就到此为止吧。

这就是本文的全部内容。希望对大家的学习有帮助,支持我们。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: