使用Python将一段文本str中的html标签去除,只保留文本部分,目前网络上有很多复杂的方法,但是实践用起来感觉好麻烦,自己写了个最简单的办法,就是用正则找到所有的,然后把他们替换为空。
def html2str(html:str)->str:
htmlstr=re.sub(pattern='<.+?>',repl='',string=html)
return htmlstr
当然这样肯定会有问题的,因为不排除文本里面正常内容就是,但是别的方法也不一定能解决此问题,so 有利有弊这是最简单的办法。
强化版本:解决部分html标签内容换行了的问题,正则改成:<(.|\n)+?>
def html2str(html:str)->str:
htmlstr=re.sub(pattern='<(.|\n)+?>',repl='',string=html)
return htmlstr
已知问题:html的style标签支持里面放样式内容,用此方法无法去除。