python中提取关键词的方法
小编给大家分享一下python中提取关键词的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!
简单的关键词提取
文章内容关键词的提取分为三大步:
(1) 分词
(2) 去停用词
(3) 关键词提取
分词方法有很多,我这里就选择常用的结巴jieba分词;去停用词,我用了一个停用词表。具体代码如下:
importjiebaimportjieba.analyse#第一步:分词,这里使用结巴分词全模式text='''新闻,也叫消息,是指报纸、电台、电视台、互联网经常使用的记录社会、传播信息、反映时代的一种文体,\具有真实性、时效性、简洁性、可读性、准确性的特点。\新闻概念有广义与狭义之分。\就其广义而言,除了发表于报刊、广播、电视上的评论与专文外的常用文本都属于新闻之列,包括消息、通讯、特写、速写(有的将速写纳入特写之列)等等。\狭义的新闻则专指消息,消息是用概括的叙述方式,比较简明扼要的文字,迅速及时地报道国内外新近发生的、有价值的的事实。\新闻也分公众新闻和小道新闻等。每则新闻在结构上,一般包括标题、导语、主体、背景和结语五部分。\前三者是主要部分,后二者是辅助部分。写法上主要是叙述,有时兼有议论、描写、评论等。'''fenci_text=jieba.cut(text)#print("/".join(fenci_text))#第二步:去停用词#这里是有一个文件存放要改的文章,一个文件存放停用表,然后和停用表里的词比较,一样的就删掉,最后把结果存放在一个文件中stopwords={}.fromkeys([line.rstrip()forlineinopen('stopwords.txt')])final=""forwordinfenci_text:ifwordnotinstopwords:if(word!="。"andword!=","):final=final+""+wordprint(final)#第三步:提取关键词a=jieba.analyse.extract_tags(text,topK=5,withWeight=True,allowPOS=())b=jieba.analyse.extract_tags(text,topK=6,allowPOS=())print(a)print(b)#text为待提取的文本#topK:返回几个TF/IDF权重最大的关键词,默认值为20。#withWeight:是否一并返回关键词权重值,默认值为False。#allowPOS:仅包括指定词性的词,默认值为空,即不进行筛选。
运行结果如下:
新闻也叫消息是指报纸、电台、电视台、互联网经常使用的记录社会、传播信息、反映时代的一种文体具有真实性、时效性、简洁性、可读性、准确性的特点新闻概念有广义与狭义之分就其广义而言除了发表于报刊、广播、电视上的评论与专文外的常用文本都属于新闻之列包括消息、通讯、特写、速写(有的将速写纳入特写之列)等等狭义的新闻则专指消息消息是用概括的叙述方式比较简明扼要的文字迅速及时地报道国内外新近发生的、有价值的的事实新闻也分公众新闻和小道新闻等每则新闻在结构上一般包括标题、导语、主体、背景和结语五部分前三者是主要部分后二者是辅助部分写法上主要是叙述有时兼有议论、描写、评论等[('新闻',0.4804811569680808),('速写',0.2121107125313131),('消息',0.20363211136040404),('特写',0.20023623445272729),('狭义',0.16168734917858588)]['新闻','速写','消息','特写','狭义','广义']
看完了这篇文章,相信你对python中提取关键词的方法有了一定的了解,想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。