改为使用del a['href']
,就像在普通字典上一样:
from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup('<p>Hello <a href="http://google.com">Google</a></p>')
for a in soup.findAll('a'):
del a['href']
给你:
>>> print str(soup)
<p>Hello <a>Google</a></p>
更新:
如果要完全摆脱<a>
标签,可以使用以下.replaceWithChildren()
方法:
from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup('<p>Hello <a href="http://google.com">Google</a></p>')
for a in soup.findAll('a'):
a.replaceWithChildren()
给你:
>>> print str(soup)
<p>Hello Google</p>
...并且,您在评论中要求的内容(用空格包装标签的文本内容)可以通过以下方式实现:
from BeautifulSoup import BeautifulSoup
soup = BeautifulSoup('<p>Hello <a href="http://google.com">Google</a></p>')
for a in soup.findAll('a'):
del a['href']
a.setString(' %s ' % a.text)
给你:
>>> print str(soup)
<p>Hello <a> Google </a></p>