Python/BeautifulSoup-如何从元素中删除所有标记?

Python/BeautifulSoup-如何从元素中删除所有标记?,python,beautifulsoup,Python,Beautifulsoup,如何从BeautifulSoup中找到的元素中简单地去掉所有标记?看起来就是这样做的!就这么简单 通过这一行,可以将当前元素中的所有文本部分连接在一起 ''.join(htmlelement.find(text=True)) 您可以使用bs4中的分解方法: soup = bs4.BeautifulSoup('<body><a href="http://example.com/">I linked to <i>example.com</i><

如何从BeautifulSoup中找到的元素中简单地去掉所有标记?

看起来就是这样做的!就这么简单

通过这一行,可以将当前元素中的所有文本部分连接在一起

''.join(htmlelement.find(text=True))

您可以使用bs4中的分解方法:

soup = bs4.BeautifulSoup('<body><a href="http://example.com/">I linked to <i>example.com</i></a></body>')

for a in soup.find('a').children:
    if isinstance(a,bs4.element.Tag):
        a.decompose()

print soup

Out: <html><body><a href="http://example.com/">I linked to </a></body></html>
soup=bs4.beautifulsou(“”)
对于汤中的a。查找('a')。儿童:
如果isinstance(a,bs4.element.Tag):
a、 分解
印花汤
输出:

为什么我看到的答案中没有提到有关
展开方法的任何内容?或者,更简单的方法是
get_text
方法


随着
BeautifulStoneSoup
进入
bs4
,Python3中的操作更加简单

from bs4 import BeautifulSoup

soup = BeautifulSoup(html)
text = soup.get_text()
print(text)
使用时,它将文档中或标记下的所有文本作为单个Unicode字符串返回

例如,从以下文本中删除所有不同的脚本标记:

<td><a href="http://www.irit.fr/SC">Signal et Communication</a>
<br/><a href="http://www.irit.fr/IRT">Ingénierie Réseaux et Télécommunications</a>
</td>
以下是源代码:

#!/usr/bin/env python3
from bs4 import BeautifulSoup

text = '''
<td><a href="http://www.irit.fr/SC">Signal et Communication</a>
<br/><a href="http://www.irit.fr/IRT">Ingénierie Réseaux et Télécommunications</a>
</td>
'''
soup = BeautifulSoup(text)

print(soup.get_text())
#/usr/bin/env蟒蛇3
从bs4导入BeautifulSoup
文本='''

''' soup=BeautifulSoup(文本) 打印(soup.get_text())
以下是源代码:您可以获得URL中的文本

URL = ''
page = requests.get(URL)
soup = bs4.BeautifulSoup(page.content,'html.parser').get_text()
print(soup)

只需将内容作为文本而不是html获取的代码:

'html\u text'参数是您将在此函数中传递以获取文本的字符串

from bs4 import BeautifulSoup

soup = BeautifulSoup(html_text, 'lxml')
text = soup.get_text()
print(text)

最好使用
getText()
而不是
getText()
。这是为什么?很可能是这样,但是理解为什么.getText()是bs3语法而不是pep8兼容会很有帮助。它可能会被弃用。添加后,请检查它。
from bs4 import BeautifulSoup

soup = BeautifulSoup(html_text, 'lxml')
text = soup.get_text()
print(text)