scrapy-redis爬取豆瓣电影短评,使用词云wordcloud展示
1、数据是使用scrapy-redis爬取的,存放在redis里面,爬取的是最近大热电影《海王》
2、使用了jieba中文分词解析库
3、使用了停用词stopwords,过滤掉一些无意义的词
4、使用matplotlib+wordcloud绘图展示
from redis import Redis
import json
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt# 加载停用词
# stopwords = set(map(lambda x: x.rstrip('\n'), open('chineseStopWords.txt').readlines()))
stopwords = set()
with open('chineseStopWords.txt') as f:for line in f.readlines():stopwords.add(line.rstrip('\n'))stopwords.add(' ')# print(stopwords)# print(len(stopwords))# 读取影评
db = Redis(host='localhost')
items = db.lrange('review:items', 0, -1)
# print(items)
# print(len(items))# 统计每个word出现的次数
# 过滤掉停用词
# 记录总数,用于计算词频
words = {}
total = 0for item in items:data = json.loads(item)['review']# print(data)# print('------------')for word in jieba.cut(data):if word not in stopwords:words[word] = words.get(word, 0) + 1total += 1print(sorted(words.items(), key=lambda x: x[1], reverse=True))
# print(len(words))
# print(total)# 词频
freq = {k: v / total for k, v in words.items()}
print(sorted(freq.items(), key=lambda x: x[1], reverse=True))# 词云
wordcloud = WordCloud(font_path='simhei.ttf',width=500,height=300,scale=10,max_words=200,max_font_size=40).fit_words(frequencies=freq) # Create a word_cloud from words and frequenciesplt.imshow(wordcloud, interpolation="bilinear")
plt.axis('off')
plt.show()
绘图结果:
参考:
https://github.com/amueller/word_cloud
http://amueller.github.io/word_cloud/
转载于:https://www.cnblogs.com/keithtt/p/10177266.html
scrapy-redis爬取豆瓣电影短评,使用词云wordcloud展示相关推荐
- 用Scrapy框架爬取豆瓣电影,构建豆瓣电影预测评分模型
文章目录 前言 一.Scrapy爬虫爬取豆瓣电影 1. Scrapy框架介绍 (1) Scrapy框架构造: (2) 数据流 (3) 项目结构 2. 创建爬虫爬取豆瓣 (1)创建项目 (2) 创建It ...
- 爬取豆瓣电影短评并使用词云简单分析top50
先使用进程池爬取豆瓣电影短评 import requests import re import random import time import pandas as pd from pymongo ...
- 爬虫利器初体验 scrapy,爬取豆瓣电影
目录 前言 scrapy 数据流 scrapy 组件 爬取豆瓣电影 Top250 后记 送书后话 前言 为什么要学 scrapy 呢?看下图中的招聘要求,就清楚了.很多招聘要求都有 scrapy,主要 ...
- 03_使用scrapy框架爬取豆瓣电影TOP250
前言: 本次项目是使用scrapy框架,爬取豆瓣电影TOP250的相关信息.其中涉及到代理IP,随机UA代理,最后将得到的数据保存到mongoDB中.本次爬取的内容实则不难.主要是熟悉scrapy相关 ...
- python爬虫豆瓣电影短评_【Python爬虫】BeautifulSoup爬取豆瓣电影短评
目的:爬取豆瓣[红海行动]电影的首页短评 步骤: 1.使用BeautifulSoup解析网页 soup = BeautifulSoup(r, 'lxml') // lxml 库解析速度快,也能解析复杂 ...
- 从入门到入土:python爬虫|scrapy初体验|安装教程|爬取豆瓣电影短评相关信息(昵称,内容,时间和评分)
此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) 本人博客所有文章纯属学习之用,不涉及商业利益.不合适引用,自当删除! 若 ...
- 爬虫框架scrapy,爬取豆瓣电影top250
1 . 新建项目 进入打算存储代码的目录,命令行运行如下语句 scrapy startproject tutorial 2 . 定义Item import scrapyclass DoubanItem ...
- Python爬取豆瓣电影短评
豆瓣是比较难爬取的网站之一,主要因为豆瓣默认如果不登录账号的话只能爬取10页的评论.所以我就带着cookie去爬取,而且设置了一个用户代理池,尽可能的伪装成浏览器.然而当我爬了三四次,一共几十页评论之 ...
- 杀鸡用用牛刀 scrapy框架爬取豆瓣电影top250信息
文章目录 一.分析网页 二.scrapy爬虫 三.处理数据 原文链接:https://yetingyun.blog.csdn.net/article/details/108282786 创作不易,未经 ...
- 基于Scrapy框架爬取豆瓣《复联4》影评,并生成词云
基于Scrapy框架爬取豆瓣<复联4>影评,并生成词云 1. 介绍及开发环境 2. 爬虫实现 2.1 新建项目 2.2 构造请求 2.3 提取信息 2.4 数据存储 2.4 运行结果 3. ...
最新文章
- Golang Failpoint 的设计与实现
- 按下电源后的几秒钟,CPU 在干嘛?
- 运维的shell小编(6)
- angular之Rxjs异步数据流编程入门
- python多线程读取文件夹下的文件_是否可以使用python多线程从文件夹数读取文件数,并处理这些文件以获得组合结果?...
- python处理windows弹窗_Python窗口IDE的基本处理,pythonwindowide
- C++笔记——.和::和:和-的区别
- linux之用 grep -r 关键字 快速搜索在目录下面的含有关键字的文件
- PHP点歌插件,斗鱼弹幕点歌插件_小葫芦社区_小葫芦插件交流 - Powered by Discuz!
- Apache会比路虎的应急效果更好
- java静态和动态的区别是什么_java中静态资源和动态资源的区别
- Java图书管理系统(控制台程序)
- 【问题解决】华硕A450C触控板失灵
- 测试家里网速用什么软件,怎么测试网速,测试网速用什么软件
- 长安清酒·花酿清酒一瓣心醉的甜香
- 前端vue+后台node实现获取微信用户基本信息+调用微信JS-SDK(上篇)
- 除了汽车,自动驾驶还将颠覆这33个行业……
- 什么是数据模型?常用的数据模型有哪些?
- I2C协议研读(九):十位寻址
- 【ES】分组后每组取第一条
热门文章
- 高速接口----JESD 204B(1)
- rxbus 源码_关于RxBus实现方式的思考
- JDK各个版本新特性介绍及使用
- java面试逻辑题_精选程序员面试常问的逻辑题
- PHP判断是手机端访问还是PC端访问网站
- 软件工程课程设计药品信息管理系统*
- 安卓逆向,Python爬虫,网页逆向和其他学习计划
- C/C++函数库 之 ctype.h
- oracle获取字符的长度的函数,oracle取字符串长度的函数length()和hengthb()
- 基于阿里语音识别(ASR)C/C++ SDK2.0编写的unimrcp中间件