是否有类似于python附带的NLTK的东西,并且不必安装?
我正在使用NLTK剥离标记并将文本保留在html文件中 NLTK在我的linux计算机上安装只需几秒钟,但在Windows上使用它是一件痛苦的事情,我知道,如果我在安装NLTK模块时遇到问题,我的客户住在另一个国家,他将无法安装NLTK模块 什么是python附带的不需要安装的简单替代方案? 我需要这个作为脚本的一部分 问题是“如何从字符串中删除HTML标记?”是否有类似于python附带的NLTK的东西,并且不必安装?,python,Python,我正在使用NLTK剥离标记并将文本保留在html文件中 NLTK在我的linux计算机上安装只需几秒钟,但在Windows上使用它是一件痛苦的事情,我知道,如果我在安装NLTK模块时遇到问题,我的客户住在另一个国家,他将无法安装NLTK模块 什么是python附带的不需要安装的简单替代方案? 我需要这个作为脚本的一部分 问题是“如何从字符串中删除HTML标记?” 重新导入 def条带标签: 返回re.sub(“]+>”,“”,s) 另外,为了将来的参考,您只需要一页 编辑:修复了regexp。
重新导入
def条带标签:
返回re.sub(“]+>”,“”,s)
另外,为了将来的参考,您只需要一页
编辑:修复了regexp。D:
双重编辑:受评论的启发,这里有一个令人憎恶的地方
def strip_tags(s):
return re.sub(r"""</?\w+(\s*([^=]+=(?P<q>['"]).+?(?P=q))|\s*\w+(=\w+)?)*>""", "", s)
def strip_标签:
返回re.sub(r“””您可以尝试:
import xml.etree.ElementTree as ET
root = ET.parser('whatever')
text = filter(None, ((el.text or '').strip() for el in root.findall('.//*')))
然后,如何处理文本取决于您。剥离标签(这不起作用)
我们可以整天玩这个游戏——HTML不是一种常规语言,所以你..废话,在原始regexp中键入,@DSM。无论哪种方式,修改后的regexp都会去掉标记,只留下纯文本内容。不确定这是否是OP想要的,但是。AKX:好的,你想玩吗?让我们玩吧。^““>您的修订版也不起作用 “
.Heh-是的,我知道会出现这种情况。上面的strip\u标记
适用于大多数在野外看到的HTML,但你是对的,不是所有的。为什么要使用NLTK(自然语言处理TK)解析HTML?可能是
import xml.etree.ElementTree as ET
root = ET.parser('whatever')
text = filter(None, ((el.text or '').strip() for el in root.findall('.//*')))