Python中爬虫是应用最为广泛的程序,而爬虫抓取回来的数据很多都是直接将整个网页的数据包括HTML、CSS、JavaScript等一股脑的都带回来。那我们不想要这些标签,只想要HTML里面的文本内容要怎么呢?我们今天就带来python怎么去除html标签的三个方法,一起往下看看吧。
假设现在有一个html的块级标签是html = '<p>你今天过的好吗?</p>',只需要获取里面这个文字的内容。
一、正则表达式
在python的数据处理中,正则表达式无疑是适用性最强,可自己扩展性最高的那一个了,示例如下:
Import re # 导入re模块 tern = re.compile(r'<[^>]+>',re.S) # 匹配两个尖括号并将其作为一个整体 result = tren.sub(' ', html) # 将html变量里匹配的全部替换成空
二、解析HTML树
在python中BeautifulSoup库是专门用来对html标签做解析、遍历、维护的功能库,使用它可以非常简单的获取html的内容,示例如下:
Import bs4 import BeautifulSoup soup = BeautifulSoup(html,'html.parser') # 对html进行解析 print(soup.get_text()) # 只获取html这个变量中的文本
三、节点处理
html的结构是自上而下、层级分明的一个个节点构成的,lxml的etree库就是用于对这种格式数据进行解析的,示例如下:
res = etree.HTML(text=html) print(res.xpath('string(.)'))
以上就是python怎么去除html标签的三种方法了,希望对你有所帮助。