Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Python爬虫之BeautifulSoup库的入门与使用Beautiful Soup库的理解Beautiful Soup库的引用BeautifulSoup类的基本元素BeautifulSoup解析实

Python爬虫之BeautifulSoup库的入门与使用Beautiful Soup库的理解Beautiful Soup库的引用BeautifulSoup类的基本元素BeautifulSoup解析实

作者头像
desperate633
发布于 2018-08-22 08:42:44
发布于 2018-08-22 08:42:44
4.3K09
代码可运行
举报
文章被收录于专栏:desperate633desperate633
运行总次数:9
代码可运行

上篇文章中,Python爬虫之requests库网络爬取简单实战

我们学习了如何利用requets库快速获取页面的源代码信息。我们在具体的爬虫实践的时候,第一步就是获取到页面的源代码,但是仅仅是获取源代码是不够的,我们还需要从页面的源代码中提取出我们所需要的那一部分的信息。所以,爬虫的难点就在于对源代码的信息的提取与处理。

Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.

具体的BeautifulSoup的安装与介绍比较简单,我们可以参考https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/#id17

Beautiful Soup库的理解

简单的说,BeautifulSoup库可以将一个html文档转换成一个BeautifulSoup类,然后我们就可以使用BeautifulSoup的各种方法提取出我们所需要的元素

Beautiful Soup库是解析、遍历、维护“标签树”的功能库

要理解与使用BeautifulSoup库我们就需要对html文档有了解

image.png

Beautiful Soup库的引用

Beautiful Soup库,也叫beautifulsoup4 或 bs4

约定引用方式如下,即主要是用BeautifulSoup类

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
from bs4 import BeautifulSoup
import bs4

image.png

BeautifulSoup对应一个HTML/XML文档的全部内容

Beautiful Soup库解析器

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
soup = BeautifulSoup('<html>data</html>''html.parser')

image.png

BeautifulSoup类的基本元素

image.png

BeautifulSoup解析实例

我们先用requests库获取一个简单的页面

http://python123.io/ws/demo.html

image.png

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import requests

r = requests.get("http://python123.io/ws/demo.html")

demo = r.text

print(demo)

image.png

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>>> from bs4 import BeautifulSoup
>>> soup = BeautifulSoup(demo, 'html.parser')
>>> soup.prettify()

我们可以利用BeautifulSoup库对页面进行解析和提取

Tag 标签

image.png

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>>> soup.title
<title>This is a python demo page</title>
>>> tag = soup.a
>>> tag
<a class="py1" href="http://www.icourse163.org/course/BIT-268001" id="link1">Basic Python</a>

任何存在于HTML语法中的标签都可以用soup.<tag>访问获得 当HTML文档中存在多个相同<tag>对应内容时,soup.<tag>返回第一个

Tag的name(名字)

image.png

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
>>> soup.a.name
'a'
>>> soup.a.parent.name
'p'
>>> 

每个<tag>都有自己的名字,通过<tag>.name获取,字符串类型

Tag的attrs(属性)

image.png

Tag的NavigableString

image.png

image.png

Tag的Comment

image.png

image.png

基于bs4库的HTML内容遍历方法

image.png

image.png

标签树的下行遍历

image.png

BeautifulSoup类型是标签树的根节点

标签树的下行遍历

image.png

image.png

标签树的上行遍历

image.png

image.png

image.png

标签树的平行遍历

image.png

image.png

image.png

image.png

image.png

小结

image.png

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2017.08.16 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Python爬虫系列:BeautifulSoup库详解
每个人的生命都是通向自我的征途,是对一条道路的尝试,是一条小径的悄然召唤。人们从来都无法以绝对的自我之相存在,每一个人都在努力变成绝对自我,有人迟钝,有人更洞明,但无一不是自己的方式。人人都背负着诞生之时的残余,背负着来自原初世界的黏液和蛋壳,直到生命的终点。
小Bob来啦
2021/03/10
1.5K0
Python爬虫系列:BeautifulSoup库详解
Python杂谈(3)——BeautifulSoup库全面介绍
Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式.Beautiful Soup会帮你节省数小时甚至数天的工作时间.
背雷管的小青年
2020/06/11
9610
​Python爬虫--- 1.3 BS4库的解析器
原文链接https://www.fkomm.cn/article/2018/7/20/18.html
圆方圆PYTHON学院
2018/12/17
9590
​Python爬虫-BeautifulSoup详解
上一节我们已经可以获取到网页内容,但是获取到的却是一长串的 html 代码,并不是我们想要的数据。那这一节,我们就来看看怎么去解析这些网页,轻松的拿到我们想要的数据。
小一不二三
2019/12/31
1.7K0
​Python爬虫-BeautifulSoup详解
Python网络爬虫入门篇
学习者需要预先掌握Python的数字类型、字符串类型、分支、循环、函数、列表类型、字典类型、文件和第三方库使用等概念和编程方法。
用户1679793
2019/03/22
2.2K0
Python网络爬虫入门篇
python爬虫:BeautifulSoup库基础及一般元素提取方法
BeautifulSoup库:BeautifulSoup库通俗来说是【解析、遍历、维护“标签树”(例如html、xml等格式的数据对象)的功能库 】
冰霜
2022/03/15
1.3K0
python爬虫:BeautifulSoup库基础及一般元素提取方法
Python: BeautifulSoup库入门
文章背景:进行网络爬虫时,通过Requests模块获取网页的全部内容,借助BeautifulSoup模块从网页中提取内容。本文对BeautifulSoup模块的使用进行简单的介绍。
Exploring
2022/09/20
3830
Python: BeautifulSoup库入门
《手把手带你学爬虫──初级篇》第3课 Beautiful Soup 4 库讲解
Beautiful Soup 4 库它是一个从HTML或者XML文件中提取数据的Python库。使用它,将极大地简化从网页源码中提取数据的步骤。
GitOPEN
2019/01/29
2.8K0
《手把手带你学爬虫──初级篇》第3课 Beautiful Soup 4 库讲解
如何利用BeautifulSoup库查找HTML上的内容
比如我们在http://python123.io/ws/demo.html这个简单的网页中找到与a和b标签相关的内容。
小Bob来啦
2021/03/10
2.3K0
如何利用BeautifulSoup库查找HTML上的内容
python_爬虫基础学习
Beautiful Soup库:解析HTML页面(pycharm中安装bs4即可)
Mirror王宇阳
2020/11/13
2.1K0
python_爬虫基础学习
Python网络爬虫实战使用Requests、Beautiful Soup和Selenium获取并处理网页数据
在网络数据变得日益丰富和重要的今天,网络爬虫成为了获取和分析数据的重要工具之一。Python作为一种强大而灵活的编程语言,在网络爬虫领域也拥有广泛的应用。本文将介绍如何使用Python中的两个流行库Beautiful Soup和Requests来创建简单而有效的网络爬虫,以便从网页中提取信息。
一键难忘
2024/04/23
2.4K0
六、介绍BeautifulSoup库:Python网络爬虫利器
小馒头学Python
2023/11/15
4770
六、介绍BeautifulSoup库:Python网络爬虫利器
Python爬虫系列(一)入门教学
大家好,我是新来的小编小周。今天给大家带来的是python爬虫入门,文章以简为要,引导初学者快速上手爬虫。话不多说,我们开始今天的内容。
短短的路走走停停
2020/02/25
1.1K0
Python爬虫——Beautiful Soup
Beautiful Soup是Python处理HTML或XML的解析库,使用Beautiful Soup需要安装Beautiful Soup库和lxml的库 Beautiful Soup官方下载地址
羊羽shine
2019/05/28
5950
Python爬虫之BeautifulSoup解析之路
上一篇分享了正则表达式的使用,相信大家对正则也已经有了一定的了解。它可以针对任意字符串做任何的匹配并提取所需信息。
Python数据科学
2018/08/06
2K0
Python爬虫之BeautifulSoup解析之路
Python爬虫库-Beautiful Soup的使用
Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库,简单来说,它能将HTML的标签文件解析成树形结构,然后方便地获取到指定标签的对应属性。
IT派
2018/07/30
1.9K0
Python爬虫库-Beautiful Soup的使用
「Python爬虫系列讲解」四、BeautifulSoup 技术
前文回顾: 「Python爬虫系列讲解」一、网络数据爬取概述 「Python爬虫系列讲解」二、Python知识初学 「Python爬虫系列讲解」三、正则表达式爬虫之牛刀小试
荣仔_最靓的仔
2021/02/02
2K0
「Python爬虫系列讲解」四、BeautifulSoup 技术
BeautifulSoup库
python爬虫抛开其它,主要依赖两类库:HTTP请求、网页解析;这里requests可以作为网页请求的关键库,BeautifulSoup库则是网页内容解析的关键库;爬虫架构分为五部分:调度器、URL管理器、网页下载器、网页解析器、应用程序等。
Mirror王宇阳
2020/11/13
1.1K0
一文入门Beautiful Soup4
本文中主要介绍的BeautifulSoup4,从简介、安装、解析器使用、语法介绍、遍历文档树、搜索文档树等进行了介绍,能够快速地入门。
皮大大
2020/10/30
1.2K0
一文入门Beautiful Soup4
Beautiful Soup库解读
Beautiful Soup是一个用于解析HTML和XML文档的库,它能够构建解析树,使得用户可以方便地浏览文档的结构。它提供了一些方法,让用户能够轻松地搜索、遍历和修改文档中的元素。
Michel_Rolle
2024/01/30
3.6K0
推荐阅读
相关推荐
Python爬虫系列:BeautifulSoup库详解
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验