Finde mit beautifulsoup die nächsten Geschwister bis zu einem bestimmten

Die Webseite sieht ungefähr so ​​aus:

<h2>section1</h2>
<p>article</p>
<p>article</p>
<p>article</p>

<h2>section2</h2>
<p>article</p>
<p>article</p>
<p>article</p>

Wie finde ich die einzelnen Abschnitte mit den darin enthaltenen Artikeln? Das heißt, nachdem Sie h2 gefunden haben, finden Sie die nächsten Geschwister

bis zum nächsten h2.

Wenn die Webseite so wäre: (was normalerweise der Fall ist)

<div>
<h2>section1</h2>
<p>article</p>
<p>article</p>
<p>article</p>
</div>

<div>
<h2>section2</h2>
<p>article</p>
<p>article</p>
<p>article</p>
</div>

Ich kann Codes schreiben wie:

for section in soup.findAll('div'):
...
    for post in section.findAll('p')

Aber was soll ich mit der ersten Webseite machen, wenn ich das gleiche Ergebnis erzielen möchte?

Antworten auf die Frage(1)

Ihre Antwort auf die Frage