Python BeautifulSoup的get_text()方法详解
Python BeautifulSoup的get_text()方法是用来从HTML或XML文档中获取所有的文本内容。它会遍历整个文档,将所有的标签和属性去除,并将剩下的纯文本内容合并为一个字符串返回。以下是get_text()方法的详解:
语法:
get_text(self, separator=u'', strip=False)
参数:
- separator:可选的分隔符,默认为空字符串。
- strip:是否删除前后空格,默认为False。
使用示例:
假设我们有一个HTML文档如下:
<html> <head> <title>pidancode.com</title> </head> <body> <h1>欢迎来到皮蛋编程!</h1> <p>我们一起来学习Python吧!</p> <ul> <li>Python基础教程</li> <li>Python爬虫教程</li> <li>Python数据分析教程</li> </ul> </body> </html>
我们可以使用以下代码片段从上面的文档中获取所有的文本内容:
from bs4 import BeautifulSoup html_doc = """ <html> <head> <title>pidancode.com</title> </head> <body> <h1>欢迎来到皮蛋编程!</h1> <p>我们一起来学习Python吧!</p> <ul> <li>Python基础教程</li> <li>Python爬虫教程</li> <li>Python数据分析教程</li> </ul> </body> </html> """ soup = BeautifulSoup(html_doc, 'html.parser') text = soup.get_text() print(text)
输出结果为:
pidancode.com 欢迎来到皮蛋编程! 我们一起来学习Python吧! Python基础教程 Python爬虫教程 Python数据分析教程
从输出结果可以看出,get_text()方法已经正确地提取出了HTML文档中的文本内容,并将它们合并为了一个字符串。同时,我们还可以使用分隔符和strip参数对输出结果进行格式化,具体方法如下:
text = soup.get_text(separator='\n', strip=True) print(text)
输出结果为:
pidancode.com 欢迎来到皮蛋编程! 我们一起来学习Python吧! Python基础教程 Python爬虫教程 Python数据分析教程
在上述代码中,我们使用了换行符作为分隔符,使用strip=True删除了输出结果中的空格。
相关文章