如何删除最外面的标签的原始字符串bs4.element.Tag?

时间:2017-07-22 01:11:35

标签: beautifulsoup

我在main.py

中有以下代码
#!/usr/bin/env python
# vim: set noexpandtab tabstop=2 shiftwidth=2 softtabstop=-1:

import sys
from bs4 import BeautifulSoup

soup = BeautifulSoup(sys.stdin.read(), 'html.parser')
print type(soup.find('a'))
print str(soup.find('a'))

结果如下。但我不希望打印最外面的标签(即,在这种情况下)。有没有办法在没有最外面标签的情况下稳健地打印原始字符串?

$ ./main.py <<EOF
> <a>x<b>y</b></a>
> EOF
None
<class 'bs4.element.Tag'>
<a>x<b>y</b></a>

1 个答案:

答案 0 :(得分:0)

print soup.find('a').get_text()

tag_string = ''
for item in soup.find('a').contents:
    tag_string += str(item)
print tag_string