python关键词提取(python关键词提取原理)
大家好!今天让创意岭的小编来大家介绍下关于python关键词提取的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。
开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等
只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端
创意岭作为行业内优秀的企业,服务客户遍布全球各地,如需了解SEO相关业务请拨打电话175-8598-2043,或添加微信:1454722008
本文目录:
一、在python 环境下,使用结巴分词,自动导入文本,分词,提取关键词.脚本 大侠给个
# -*- coding: utf-8 -*-
import jieba
import jieba.posseg as pseg
import jieba.analyse
#jieba.load_userdict('userdict.txt')#jieba默认有一个dict.txt词库,但可以根据自己需要加入自己的词条
str1 = "训练一个可进行N维分类的网络的常用方法是使用多项式逻辑回归"
str2 = "可以尝试修改网络架构来准确的复制全连接模型"
str3 = "模型的目标函数是求交叉熵损失和所有权重衰减项的和,loss()函数的返回值就是这个值"
seg_list = jieba.cut(str1,cut_all =True) #全模式
print("/".join(seg_list))
result = pseg.cut(str1)
result2 = jieba.cut(str2) #精准模式
result3 = jieba.analyse.extract_tags(str3,4) #关键词提取
result4 = jieba.cut_for_search(str3) #搜索引擎模式
for w in result:
print(w.word,w.flag)
print(" ".join(result2))
print(" ".join(result3))
print(" ".join(result4))
二、如何用Python实现在文件夹下查找一个关键词
#!/usr/bin/python
#coding:utf8
import os
#判断文件中是否包含关键字,是则将文件路径打印出来
def is_file_contain_word(file_list, query_word):
for _file in file_list:
if query_word in open(_file).read():
print _file
print("Finish searching.")
#返回指定目录的所有文件(包含子目录的文件)
def get_all_file(floder_path):
file_list = []
if floder_path is None:
raise Exception("floder_path is None")
for dirpath, dirnames, filenames in os.walk(floder_path):
for name in filenames:
file_list.append(dirpath + '\\' + name)
return file_list
query_word = raw_input("Please input the key word that you want to search:")
basedir = raw_input("Please input the directory:")
is_file_contain_word(get_all_file(basedir), query_word)
raw_input("Press Enter to quit.")
请采纳
三、怎么批量下载上市公司年报然后提取关键词
首先,可以到中国证券网站上搜索你想要下载的上市公司的年报,然后下载它们。
2.然后,使用文本分析软件,如R或Python,对每一份年报进行文本分析,从中提取出关键词。
3.最后,将提取出的关键词进行整理和分析,以便更好地了解上市公司的业务情况。
四、手机评论文本挖掘与数据分析(Python)
目的
各大电商竞争越来激烈,为了提升客户服务质量,除了打价格战外,了解客户的需求点,对消费者的文本评论进行数据挖掘,倾听客户的心声越来越重要。
工具
1、贝壳采集器
2、Google浏览器
3、Python3.7 + Pycharm
数据采集
①本文对京东平台的手机进行爬虫,首先进入京东商城,选择一款手机,这里以华为Mate 30 Pro 5G为例
②在采集平台输入网址,点击贝壳采集开始配置信息
③因为是采集评论所以还需要进行下预操作配置切换页面:点击预操作按钮-->添加点击元素按钮-->左键点击流程图中添加元素按钮(悬浮显示操作键)-->点击悬浮显示操作键<选择按钮> -->点击网页商品评论TAB页切换按钮 -->点击保存
④没有识别出评论信息,手工操作下:清空字段-->更改页面类型为手工识别列表 --> 选中两个一样元素(这里两个用户名称) -->下一页未自动识别成功-->更改分页类型为手动点击下一页-->配置完成-->开始采集
数据预处理
当我们通过爬虫获取到我们想要的数据之后,进行简单的观察,可以发现评论的一些特点:
文本短,基本上大量的评论就是一句话.
情感倾向明显:明显的词汇如”好” “可以”
语言不规范:会出现一些网络用词,符号,数字等
重复性大:一句话出现词语重复
数据量大.
故我们需要对这些数据进行数据预处理
数据预处理包括:去重、分词等
下面我们将进行数据清洗
import jieba
#评论内容进行去重
def quchong(infile, outfile):
infopen = open(infile, 'r', encoding='utf-8')
outopen = open(outfile, 'w', encoding='utf-8')
lines = infopen.readlines()
list_1 = []
for line in lines:
if line not in list_1:
list_1.append(line)
outopen.write(line)
infopen.close()
outopen.close()
quchong("E:/comments/华为P30.txt", "E:/comments/P30去重.txt")
# jieba.load_userdict('userdict.txt')
#创建停用词list
def stopwordslist(filepath):
stopwords = [line.strip() for line in open(filepath, 'r', encoding='utf-8').readlines()]
return stopwords
#对评论内容进行分词
def seg_sentence(sentence):
sentence_seged = jieba.cut(sentence.strip())
stopwords = stopwordslist('stopwords.txt') #这里加载停用词的路径
outstr = ''
for word in sentence_seged:
if word not in stopwords:
if word != '\t':
outstr += word
outstr += " "
return outstr
inputs = open('E:/comments/P30去重.txt', 'r', encoding='utf-8')
outputs = open('E:/comments/P30分词.txt', 'w')
for line in inputs:
line_seg = seg_sentence(line) #这里的返回值是字符串
outputs.write(line_seg + '\n')
outputs.close()
inputs.close()
print('分词完毕')
数据分析
上面我们已经通过去重和jieba分词将爬取的内容进行了预处理,接下来就开始对处理过的数据进行分析,包括词频统计、关键词提取以及词云的生成等
#词频统计
import jieba.analyse
from collections import Counter #词频统计
with open('E:/comments/P30分词.txt', 'r', encoding='utf-8') as fr:
data = jieba.cut(fr.read())
data = dict(Counter(data))
with open('E:/comments/P30词频.txt', 'w', encoding='utf-8') as fw: # 读入存储wordcount的文件路径
for k, v in data.items():
fw.write('%s, %d\n' % (k, v))
import jieba.analyse
import matplotlib.pyplot as plt
from wordcloud import WordCloud
#生成词云
with open('E:/comments/P30词频.txt') as f:
#提取关键词
data = f.read()
keyword = jieba.analyse.extract_tags(data, topK=50, withWeight=False)
wl = " ".join(keyword)
#设置词云
wc = WordCloud(
#设置背景颜色
background_color = "white",
#设置最大显示的词云数
max_words=2000,
#这种字体都在电脑字体中,一般路径
font_path='C:/Windows/Fonts/simfang.ttf',
height=1200,
width=1600,
#设置字体最大值
max_font_size=100,
#设置有多少种随机生成状态,即有多少种配色方案
random_state=30,
)
myword = wc.generate(wl) #生成词云
#展示词云图
plt.imshow(myword)
plt.axis("off")
plt.show()
wc.to_file('E:/comments/P30.png') #把词云保存下
以上就是关于python关键词提取相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。
推荐阅读:
狗屁不通文章生成器python(狗屁不通文章生成器生成的文章)