どのようにしてforループを定義に入れることができますか?beautifulsoup4:forループのアンラッピングタグを定義に配置する(python3)
from bs4 import BeautifulSoup
html="<p>ABC <i>Italic1 </i><i>Italic2</i></p>"
soup = BeautifulSoup(html,"html.parser")
for i in soup.findAll('i'):
soup.i.unwrap()
print(soup)
私は、しかし、成功せずにそれを試してみました:
def UnwrapTag(x):
x=str(x)
for x in soup.findAll(x):
soup.x.unwrap() #wrong but what else?
UnwrapTag('i')
'i'と' x'は 'soup.i'や' soup.x'ではなくループ変数です。 – poke
@最初のブロックの作業を正確に期待しています( 'i'は' bs4.element.Tag'であり、 'soup'を参照するので、' soup.i'は必要ありません)。 – Dekel
@Dekel Itしかし、非常に異なる意味を持っています。そこに 'soup.i'を使用すると、そのループの内部では間違っています。 – poke