博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于bs4库中的html内容的遍历方法,html格式化和编码
阅读量:3959 次
发布时间:2019-05-24

本文共 772 字,大约阅读时间需要 2 分钟。

标签树的下行遍历

所用到的方法:(如下表)

.contents 子节点列表,将tag所有儿子节点存入列表
.children 子节点的迭代类型,用于循环遍历儿子节点
.descendants 子孙节点的迭代方式,包含所有子孙节点,用于循环遍历

代码如下:(此处代码延着上一篇博文的代码,故部分变量沿袭下来)

遍历body标签的所有子孙节点>>> for child in soup.body.descendants:	print(child)

标签树的上行遍历

所用到的方法:(如下表)

.parent 父节点列表,将tag所有儿子节点存入列表
.parents 父节点的迭代类型,用于循环遍历先辈节点

代码如下

遍历a标签的所有父节点>>> for p in soup.a.parent:	if p is None:		print(p)	else :		print(p.name)

标签树的上平行遍历

发生在同一个父节点下的各个平行节点标签

所用到的方法:(如下表)

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

代码如下:其他方法同理

>>> for s in soup.a.next_sibling:	print(s)

在前续代码当中,我们对soup的输出后面加上了一个方法:.prettify

prettify()方法,soup.prettify或者print(soup.prettify)
在python3.0以上的版本,编码默认为utf-8

转载地址:http://zxmzi.baihongyu.com/

你可能感兴趣的文章
软件配置管理概念-3,CM系统的概念
查看>>
JSP/Servlet应用程序优化八法
查看>>
人生必修的181条佛理
查看>>
The Most Widely Used Java Libraries
查看>>
简单在单机使用apache-james(开源邮件服务器)
查看>>
lsof 快速起步
查看>>
使用ScribeFire方便地发布blog
查看>>
跨平台Java程序注意事项
查看>>
Python字符与数字的相互转换
查看>>
C 指针解读
查看>>
有关乱码的处理---中国程序员永远无法避免的话题
查看>>
JSP的运行内幕
查看>>
python超简单的web服务器
查看>>
代理模式、静态代理、动态代理、aop
查看>>
Struts1.x Spring2.x Hibernate3.x DWR2.x整合工具文档v1.00
查看>>
大型Web2.0站点构建技术初探
查看>>
机器学习算法汇总:人工神经网络、深度学习及其它
查看>>
解决Spring中AOP不能切入Struts的DispatchAction方法的问题
查看>>
出国以后才知道英语应该怎么学
查看>>
计算机专业权威期刊投稿经验总结
查看>>