Fügen Sie Eltern-Tags mit schöner Suppe hinzu

Ich habe viele HTML-Seiten mit verschiedenen Abschnitten, die diese Codeausschnitte enthalten:

<code><div class="footnote" id="footnote-1">
<h3>Reference:</h3>
<table cellpadding="0" cellspacing="0" class="floater" style="margin-bottom:0;" width="100%">
<tr>
<td valign="top" width="20px">
<a href="javascript:void(0);" onclick='javascript:toggleFootnote("footnote-1");' title="click to hide this reference">1.</a>
</td>
<td>
<p> blah </p>
</td>
</tr>
</table>
</div>
</code>

Ich kann den HTML-Code erfolgreich analysieren und diese relevanten Tags extrahieren

<code>tags = soup.find_all(attrs={"footnote"})
</code>

Jetzt muss ich neue übergeordnete Tags hinzufügen, damit das Code-Snippet wie folgt lautet:

<code><div class="footnote-out"><CODE></div>
</code>

Ich kann jedoch keine Möglichkeit finden, übergeordnete Tags in bs4 so hinzuzufügen, dass sie die identifizierten Tags in Klammern setzen. insert () / insert_before add in nach den identifizierten Tags.

Ich habe mit der Manupulation von Strings begonnen:

<code>for tags in soup.find_all(attrs={"footnote"}):
      tags = BeautifulSoup("""<div class="footnote-out">"""+str(tags)+("</div>"))
</code>

aber ich glaube, das ist nicht der beste Kurs.

Danke für jede Hilfe. Ich habe gerade mit bs / bs4 angefangen, kann das aber nicht knacken.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage