Python 第三方库 jieba 是一个开源的,用于中文分词以及简单文本处理的工具包,不仅提供了基础的分词功能,还附带词性标注、实体识别以及关键词提取功能。基本的分词功能以及优化分词的方法,已经在上文链接指向的文章中详细说明过,本文则主要介绍如何使用 jieba 库进行关键词提取。jieba 库内置了两种关键词提取算法,正是 TF-IDF 和 TextRank 算法,它们都是最为经典和常用的关键词提取算法。
我们所使用的文本数据为《二十大报告.txt》,从网上搜索二十大的文章名修改好文件名字,粘贴至与代码相同目录的地方视作参考文件.
运行代码如下:
import jieba
txt = open("二十大报告.txt","r",encoding='utf-8').read()
words = jieba.lcut(txt)
counts = {}
for word in words:
if len(word) == 1:
continue
else:
counts[word] = counts.get(word,0)+1
items = list(counts.items())
items.sort(key=lambda x:x[1],reverse=True)
for i in range(15):
word,count = items[i]
print("{0:<10}{1:>5}".format(word,count))