2017-02-07 4 views
0

Как обернуть тег новым тегом в bs4.Обернуть найденный тег внутри нового тега в bs4

например, у меня есть html, как это.

<html> 
 
<body> 
 
<p>Demo</p> 
 
<p>world</p> 
 
</body> 
 
</html>

Я хочу, чтобы преобразовать его в этом.

<html> 
 
<body> 
 
<b><p>Demo</p></b> 
 
<b> <p>world</p> </b> 
 
</body> 
 
</html>

Вот иллюстративное.

from bs4 import BeautifulSoup 
html = """ 
     <html> 
     <body> 
     <p>Demo</p> 
     <p>world</p> 
     </body> 
     </html>""" 

soup = BeautifulSoup(html, 'html.parser') 

for tag in soup.find_all('p'): 
# wrap tag with '<b>' 

ответ

1

Document:

from bs4 import BeautifulSoup 
html = """ 
     <html> 
     <body> 
     <p>Demo</p> 
     <p>world</p> 
     </body> 
     </html>""" 

soup = BeautifulSoup(html, 'html.parser') 
for p in soup('p'): # shortcut for soup.find_all('p') 
    p.wrap(soup.new_tag("b")) 

из:

<html> 
<body> 
<b><p>Demo</p></b> 
<b><p>world</p></b> 
</body> 
</html> 
+0

Благодаря Man. скалы bs4 – Rahul