HTMLには、MDNにリストされている空の要素の概念があります。しかし、美しいスープは、それらを適切に処理していないよう:美しいスープを使用して空のhtmlタグを正しく解析します。
import bs4
soup = bs4.BeautifulSoup(
'<div><input name=the-input><label for=the-input>My label</label></div>',
'html.parser'
)
print(soup.contents)
私が手:
[<div><input name="the-input"><label for="the-input">My label</label></input></div>]
すなわち、入力がラベルを折り返しています。
質問:これを適切に解析するために美しいスープを得る方法はありますか?または、私がまだ見つけていないこの行動の公式な説明がありますか?
非常に少なくとも私のようなものを期待したい:
[<div><input name="the-input"></input><label for="the-input">My label</label></div>]
すなわちを入力は自動的にラベルの前に閉じます。
ありがとう、役に立つリンクを知っている! – daphtdazz