ich eine HTML-Seite wie diese:Python/BeautifoulSoup - Auszug div Inhaltskontrolle h1 Text
<div class="class1">
<div class="head">
<h1 class="title">Title 1</h1>
<div class="body">
<!-- some body content -->
</div>
</div>
</div>
<div class="class1">
<div class="head">
<h1 class="title">Title 2</h1>
<div class="body">
<!-- some body content -->
</div>
</div>
</div>
Ich brauche Inhalte aus den div
mit class body
nur zu extrahieren, wenn der Titel auf „Title 2
“ gleich ist. Da ihre übergeordneten Container keine spezifischen IDs oder Klassen haben, ist der h1
Text die einzige Möglichkeit zu erkennen, worum es bei all dem Div geht. Im Moment benutze ich diesen Code:
from bs4 import BeautifoulSoup
# code to open the webpage
soup = BeautifulSoup(data, 'lxml')
body_content = soup.findAll('div', {'class':'class1'})[1]
Aber das ist nicht sehr elegant, da vermutet, dass die div ich interessiert bin, ist immer der zweite der Seite - es überprüft nicht für die Titel.