日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

标签树的三种遍历

發布時間:2023/12/2 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 标签树的三种遍历 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、標簽樹的下行遍歷

屬性說明
.contents子節點的列表,將<tag>所有兒子節點存入列表中(只能獲取下一級兒子節點)
.children子節點的迭代類型,與.contents類似,用于循環遍歷兒子節點
.descendants子孫節點的迭代類型,包含所有子孫結點,用于循環遍歷(可以獲取所有子節點)

?

?

?

?

?

?

1 #這里使用前一篇文章的demo這鍋湯 2 print(soup.head)#打印head標簽 3 print(soup.body.contents)#打印body標簽的下一級標簽 4 print(len(soup.body.contents))#打印body標簽的下一級標簽的個數 1 for child in soup.body.contents: 2 print(child)#循環遍歷兒子節點 3 4 for child in soup.body.contents: 5   print(child)#循環遍歷子孫節點

?

?

二、標簽樹的上行遍歷

屬性說明
.parent節點的父親標簽
.parents節點先輩標簽的迭代類型,用于循環遍歷先輩節點

?

?

?

?

1 #依舊使用demo和soup這鍋湯 2 #demo = r.text 3 #soup = BeautifulSoup(demo,"html.parser") 4 5 print(soup.title.paret)#打印title的父親標簽 6 print(soup.html.parent)#由于html標簽是最高級的標簽,它的父親是它自己 7 8 #循環上行遍歷標簽樹: 9 for parent in soup.a.parents: 10 if parent is None: 11 print(parent) 12 else: 13 print(parent.name)

?

?

三、標簽樹的平行遍歷

屬性說明
.next_sibling返回按照HTML文本順序的下一個平行節點標簽
.previos_sibling返回按照HTML文本順序的上一個平行節點標簽
.next_siblings迭代類型,返回按照HTML文本順序的后續所有平行節點標簽
.previous_siblings迭代類型,返回按照HTML文本順序的前續所有平行節點標簽

?

?

?

?

?

?

?

?

注意:這個只能發生在父節點相同的標簽遍歷

1 print(soup.a.next_sibling)#平行節點的后一個兄弟標簽 2 print(soup.a.previous_sibling)#平行節點的前一個兄弟標簽 3 4 for sibling in soup.a.next_siblings: 5 print(sibling)#循環遍歷后續節點 6 7 for sibling in soup.a.previous_siblings: 8 print(sibling)#循環遍歷前續節點

?

轉載于:https://www.cnblogs.com/BASE64/p/10288475.html

總結

以上是生活随笔為你收集整理的标签树的三种遍历的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。