NAVIGATING TREE - parent, children, siblings
Python
#!/usr/bin/env python3
"""NAVIGATING TREE - parent, children, siblings"""
from bs4 import BeautifulSoup
html = """
<html><body>
<div id="container">
<p>First child</p>
<p id="middle">Middle child</p>
<p>Last child</p>
</div>
</body></html>
"""
soup = BeautifulSoup(html, 'html.parser')
middle = soup.find(id='middle')
print("Tree Navigation:")
print(f" Parent: {middle.parent.name}")
print(f" Previous sibling: {middle.previous_sibling.previous_sibling.string}")
print(f" Next sibling: {middle.next_sibling.next_sibling.string}")
container = soup.find(id='container')
print(f" Children count: {len(list(container.children))}")
for i, child in enumerate(container.children):
if child.name:
print(f" Child {i}: {child.string}")