python网络爬虫(三)Beautiful Soup库介绍

0、作用

一个简单的html网页源代码:

<html>
	<head>
		<title>This is a python demo page</title>
	</head>
	<body>
		<p class="title">
			<b>The demo python introduces several python courses.</b>
		</p>
		<p class=“course”>Python is a wonderful general‐purpose programming language.You can learn Python from novice to professional by tracking the following courses:
			<a href="http://www.icourse163.org/course/BIT‐268001" class="py1"id="link1">Basic Python</a> and
			<a href="http://www.icourse163.org/course/BIT‐1001870001" class="py2"id="link2">Advanced Python</a>.
		</p>
	</body>
</html> 

将其画成一棵标签树
在这里插入图片描述
Beautiful Soup的作用就是将爬取的信息整理成可视化良好的信息,导库的方法如下:

from bs4 import BeautifulSoup
soup = BeautifulSoup('<p>data</p>', 'html.parser')

1、基本元素

在这里插入图片描述

基本元素说明
Tag标签最基本的信息组织单元,分别用<>和</>标明开头和结尾
Name标签的名字,上图中tag的名字是’p’,格式:<tag>.name
Attributes标签的属性,字典形式组织,格式:<tag>.attrs
NavigableString标签内非属性字符串,<>…</>中字符串,格式:<tag>.string
Comment标签内字符串的注释部分,一种特殊的Comment类型

2、内容的遍历

在这里插入图片描述

(1)下行遍历

属性说明
.contents子节点的列表,将所有儿子节点存入列表
.children子节点的迭代类型,与.contents类似,用于循环遍历儿子节点
.descendants子孙节点的迭代类型,包含所有子孙节点,用于循环遍历

在这里插入图片描述

(2)上行遍历

属性说明
.parent节点的父亲标签
.parents节点先辈标签的迭代类型,用于循环遍历先辈节点

在这里插入图片描述

(3)平行遍历

属性说明
.next_sibling返回按照HTML文本顺序的下一个平行节点标签
.previous_sibling返回按照HTML文本顺序的上一个平行节点标签
.next_siblings迭代类型,返回按照HTML文本顺序的后续所有平行节点标签
.previous_siblings迭代类型,返回按照HTML文本顺序的前续所有平行节点标签

在这里插入图片描述
在这里插入图片描述

3、prettify()

print(soup.prettify())
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值