2020-11-20 python 基于bs4库的HTML内容遍历方法

本文介绍如何使用BeautifulSoup库中的BS4进行标签树的下行遍历和平行遍历,包括子节点、兄弟节点的获取及遍历方法,并演示了如何通过Python代码实现这些功能。

标签树的下行遍历

 

属性说明
.contents子节点的列表,将<tag>所有儿子节点存入列表
.children子节点的迭代类型,与.contents类似,用于循环遍历儿子节点
.descedants子节点的迭代类型,包含所有子孙节点,用于循环遍历
from bs4 import BeautifulSoup
import requests
cont = requests.get("https://www.opticres.com")
soup = BeautifulSoup(cont.text,'html.parser')
print(soup.title)

 

平行遍历--发生在同一个父节点下的各个节点间

属性说明
.next_sibling返回按照HTML文本顺序的下一个平行节点标签
.previous_sibling返回按照HTML文本顺序的上一个平行节点标签
.next_siblings迭代类型,返回按照HTML文本顺序的后续所有平行节点标签
.previous_siblings迭代类型,返回按照HTML文本顺序的前序所有平行节点标签
from bs4 import BeautifulSoup
import requests
cont = requests.get("https://www.opticres.com")
soup = BeautifulSoup(cont.text,'html.parser')
print(soup.a.next_sibling.next_sibling)
print(soup.a.previous.next_sibling)

bs4库的prettify()方法

from bs4 import BeautifulSoup
import requests
r = requests.get("https://www.baidu.com")
demo = r.text
print(demo)
soup = BeautifulSoup(demo,"html.parser")
print(soup.prettify())

规范化输出

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值