评论关键词提取(评论关键词提取论文)
大家好!今天让创意岭的小编来大家介绍下关于评论关键词提取的问题,以下是小编对此问题的归纳整理,让我们一起来看看吧。
开始之前先推荐一个非常厉害的Ai人工智能工具,一键生成原创文章、方案、文案、工作计划、工作报告、论文、代码、作文、做题和对话答疑等等
只需要输入关键词,就能返回你想要的内容,越精准,写出的就越详细,有微信小程序端、在线网页版、PC客户端
创意岭作为行业内优秀的企业,服务客户遍布全球各地,如需了解SEO相关业务请拨打电话175-8598-2043,或添加微信:1454722008
本文目录:
一、小红书中可以搜索人家评论的关键字吗
:1、小红书app端寻找达人小红书app端的达人寻找就是我们可以通过小红书app的搜索框输入我们的目标达人名称或者品牌所在的品类相关词等进行寻找,比如输入关键词“狗粮”然后就可以看到相关内容笔记,接着就可以找到相应的内容了哦😊
二、如何通过评论热词搜索B站UP主?
飞瓜数据B站有【按评论热词】搜索UP主的功能,输入评论关键词,可以是某个舆情热词、某个商品名称、某个场景词等,会匹配到对应的UP主。
三、手机评论文本挖掘与数据分析(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') #把词云保存下
四、微博爬虫系列之关键词及指定用户博文爬取
近期的一些微博爬虫内容,本篇主要将怎么根据关键词或指定用户进行博文爬取。
准备写的内容:
定向词及指定用户博文爬取方面,用的是微博网页版( https://weibo.cn )。对于微博网页版中相关博文的爬取,需要使用到 cookies 。这方面的爬取参考了github上的资源:
写的时候发现网页版的关键词检索接口已经不见了···可能是微博删除了网页版的接口吧···之后再看看怎么在pc端爬取。
这里先介绍怎么指定用户进行博文爬取吧···
指定用户的时候,需要有用户的用户id。通常用户id是一串数字,也有一些账号更改后是字符串,举个例子,何同学跟央视新闻的微博:
在这里何同学的 uid = 6529876887 ,央视新闻的 uid = cctvxinwen 。当然也可以获取到央视新闻以数字存储的id,之后再讲怎么获取,这里直接放出来就是 uid = 2656274875 ,点击可以发现确实是央视新闻的微博 https://weibo.cn/2656274875
这个问题在爬取用户博文方面没有影响,不过在爬取用户信息时会有影响,后面写用户信息爬取再说这个情况怎么解决。
下面以央视新闻为例看看怎么爬用户的博文。
点击进入 央视新闻 的微博,可以看到这个账号发布了很多很多微博,在网页版观看就会显示很多页,那么要爬取的时候就要先获取他的页数。
当点击第二页时,会发现 url 会变成 https://weibo.cn/cctvxinwen?page=2 。也就是说这个翻页是以 page 这个字段进行翻页的,这就好办很多了。
将 page 改成 1 可以发现网页跳转到所有博文的第1页,接下来那我们就先获取到所有的页面url。
首先进入 https://weibo.cn/cctvxinwen?page=1 ,打开开发者模式,在文件中找到自己的 cookies 。
在网页开发者模式下,点开文件可以发现没有json格式的数据输出。因此这里不能直接通过解析json数据获取到页面数据。
这里就需要查看网页返回的文本信息了。这里再定位具体信息时,我用的是 lxml 库里的 etree 方法。
这里要查看具体要定位到哪里,可以在网页上的源码进行定位,比如我们要定位到页数,找到页数所在的地方:
拿到用户的所有博文网页后,就可以进行博文的爬取了。这里每一页的数据是一样的,所以直接用第一页为例就可以了。同样的将页面数据爬下来:
还是在网页上看,定位到某一条博文,可以看到源码是这样子的:
可以看到第1页这里展示了11条博文(这个不一定),每条博文放在 div class="c" id="" 的控件里,这里的id是对应的博文id,于是我们就可以拿到博文的控件:
选择其中一个博文来看
这里我们可以看到要的信息全在这里了,接着就按着控件抓信息。这里拿其中一个节点为例。
首先获取微博的url以及微博id,这个从上面看到,可以从点赞、转发、评论处的链接获取,这里选择最简单的转发链接,对应的点赞数、转发数、评论数也可以顺便爬下来了:
接下来看下微博的创建时间,这里我们看到还有微博的来源,有一些可能会没有这个信息:
接下来就是博文的主体了:
博文方面的内容提取基本就是从github上搬过来的,对内容部分字符串进行了一些匹配清洗:
上面是比较简单的博文情况,有一些可能有图片、视频、转发等情况,这里直接放GitHub的做法,具体爬取方式是一样的,定位控件,找信息:
到这里,指定用户的博文爬取就结束了,主要还是参考了GitHub的大神~
以上就是关于评论关键词提取相关问题的回答。希望能帮到你,如有更多相关问题,您也可以联系我们的客服进行咨询,客服也会为您讲解更多精彩的知识和内容。
推荐阅读: