大部分python爬虫访问网页请求后抓取数据返回的都是html格式的数据文档,而这些文档都是以节点树结构而存在的 。而下面这篇文章所要讲解的内容就是,使用第三方库BeautifulSoup实现遍历HTML文档树的几个方法,感兴趣的小伙伴可以一起往下看看哦 。
文章插图
一、获取子孙节点
在html文档之中一个标签下的另外一个标签被称之为子节点,而该子节点下如果还有标签的话,那么自然就会被视为根节点的孙子节点了 。而这个方法就是用来获取一个节点下所有节点的,使用lxml解析器先将html文档进行解析处理 。
然后再用descendants属性即可对一个节点下所有子孙节点进行递归循环,最后只需要使用for循环迭代它即可取出该节点下所有节点和子节点的内容,代码示例如下所示:
from bs4 import BeautifulSouphtml = """<html><head><title>The Dormouse's story</title></head>"""soup = BeautifulSoup(html, "lxml")for child in soup.head.descendants: print(child)<title>The Dormouse's story</title>The Dormouse's story以上代码示例就是取到了head标签下的title节点并将其输出,因为该节点中还有内容可以视为子节点,所有还会将这个节点的内容再遍历到输出 。
【Python爬虫怎么遍历文档树?Python爬虫是如何遍历HTML文档的】二、获取string属性
因为HTML文档实际上是由不同标签嵌套来组成的,如果一个节点下面只有一个string类型的子节点的话,那么就可以使用string属性直接获取到这个节点下面的文本内容 。哪怕是这个节点下面还嵌套了多个不同的节点存在,详细代码示例如下所示:
print(soup.head.string)print(soup.head.title.string)The Dormouse's storyThe Dormouse's story以上就是关于“Python爬虫怎么遍历文档树?Python爬虫是如何遍历HTML文档的”的全部内容了,希望对你有所帮助 。
推荐阅读
- 小卫生间怎么做干湿分离 小卫生间如何做干湿分离
- 抖音个人作品怎么置顶 下面5个步骤帮你解决
- 单黄线可以掉头吗 单黄线是怎么分类的
- 薄荷叶发白是怎么回事 薄荷叶发白的解决方法
- 农村信用社手机银行怎么开通
- 手机qq文件怎么发到qq邮箱
- 豆豉虾皮菠菜面怎么做 怎么做豆豉虾皮菠菜面
- 黄豆花生怎么做好吃
- 原神荒海海底世界怎么通关 原神荒海海底世界通关操作步骤
- 金立手机怎么录屏 金立手机如何录屏