# 项目——豆瓣电影Top250的短评分析
> Scrapy 爬虫 + 数据清理 + 数据分析 + 构建情感分析模型
- [一、爬取豆瓣Top250的短评数据](#一爬取豆瓣top250的短评数据)
- [movie_item](#movie_item)
- [movie_comment](#movie_comment)
- [movie_people](#movie_people)
- [二、数据清理与特征工程+统计分析](#二数据清理与特征工程统计分析)
- [movie_item](#movie_item-1)
- [总评分最高的前10部电影](#1-总评分最高的前10部电影)
- [最受欢迎的电影类别排名](#2-最受欢迎的电影类别排名)
- [最受欢迎的电影出品国家排名](#3-最受欢迎的电影出品国家排名)
- [最受欢迎的电影导演排名](#4-最受欢迎的电影导演排名)
- [最受欢迎的电影演员排名](#5-最受欢迎的电影演员排名)
- [最受欢迎的电影语言排名](#6-最受欢迎的电影语言排名)
- [根据电影时长的电影排名](#7-根据电影时长的电影排名)
- [根据电影投票数的电影排名](#8-根据电影投票数的电影排名)
- [根据电影评价数的电影排名](#9-根据电影评价数的电影排名)
- [根据电影提问数的电影排名](#10-根据电影提问数的电影排名)
- [根据电影发布时间的规律](#11-根据电影发布时间的规律)
- [1~5星级投票的百分比](#12-15星级投票的百分比)
- [电影简介的情感分析](#13-电影简介的情感分析)
- [movie_comment](#movie_comment-1)
- [就肖申克的救赎这个电影而言](#1-就肖申克的救赎这个电影而言)
- [短评词云](#短评词云)
- [用朴素贝叶斯完成中文文本分类器](#用朴素贝叶斯完成中文文本分类器)
- [用svc完成中文文本分类器](#用svc完成中文文本分类器)
- [用facebook-fasttext有监督完成中文文本分类](#用facebook-fasttext有监督完成中文文本分类)
- [用facebook-fasttext无监督学习](#用facebook-fasttext无监督学习)
- [用cnn做中文文本分类](#用cnn做中文文本分类)
- [用rnn做中文文本分类](#用rnn做中文文本分类)
- [用gru来完成中文文本分类](#用gru来完成中文文本分类)
- [全部影片的短评数据分析](#2-全部影片的短评数据分析)
- [movie_people](#movie_people-1)
1. [短评人常居地按照国家分布](#1-短评人常居地按照国家分布)
2. [中国短评人常居地按照省份分布](#2-中国短评人常居地按照省份分布)
3. [每个短评人的被关注数与好友数](#3-每个短评人的被关注数与好友数)
4. [中国短评人的被关注数和好友数的人均地域分布](#4-中国短评人的被关注数和好友数的人均地域分布)
5. [根据点评人个人简介构建中文文本分类模型](#5-根据点评人个人简介构建中文文本分类模型)
- [三、movie_item + movie_comment + movie_people](#三movie_item--movie_comment--movie_people)
- [三个数据集间的协同分析](#三个数据集间的协同分析)
- [通过短评来预测被评价电影是什么类型](#通过短评来预测被评价电影是什么类型)
- [小结](#小结)
> - 项目要求:
> 1. **爬取**豆瓣Top250 or 最新电影(例如战狼2、敦刻尔克、蜘蛛侠、银魂)的短评数据,保证抓取尽量完整;
> 2. **分析**大家的**短评用词**,分析 总体/分词性 的核心词,通过**可视化**方式展示;
> 3. **统计分析**电影的打分分布状况、右侧有用的分布、点评量随时间的变化、点评人常居地的分布等,并用可视化的方式展示;
> 4. 通过评分与短评数据,构建**情感褒贬分析分类器**,通过短评数据预测用户“喜欢”or“不喜欢”电影。
>
> 注:**其他**的有意义的分析和建模,有**加分**!
>
> - 提交要求:
> - 根据project步骤,有任务子文件夹
> - 根据project要求,建立相关文件夹与readme文档
> - 学员应在readme文档中对自己的思路与各文件进行注释
>
>
- 项目总目标:
- 尽可能完备的爬取与短评相关的信息,足够完备的给出所有分析。
- 项目分步目标:
- 爬取豆瓣Top250电影站点中三类数据:每个电影详情信息、每个电影的短评内容和每个短评背后点评人的个人信息。
- 给每个数据集,分别完成统计分析、构建中文文本情感分析模型。
- 三个数据集交叉的统计分析,并构建中文文本深度学习模型。
- Idea:
- 对每个数据集单独做一个统计分析:
- 250电影的纵向对比:最受欢迎(前10)的电影(根据豆瓣?总评分?)/电影类别(按出现频次)/导演(按出现频次)/演员(按出现频次)/语言(按出现频次,可以对其根据**分类?)/出品国家(按出现频次,可以对其根据大洲分类)/电影时长(按出现频次,可以对其分段,看不同段的直方图);所有电影的发布时间分布,以观察什么年代的电影最受欢迎(可以对其分段);在发布时间基础上,对比总评分/评价数/提问数的分布;以及,上述三者之间的分布依赖关系。从电影简介中分析情感关键词,看其与电影类别的关联、与导演的性格关联、与演员的关联。
- 所有短评的统计分析:对每个电影爬取的短评量大致分布均匀;取前10电影,分别观察,短评喜欢和不喜欢为label构建模型。
- 对点评人的常居地可视化;查看活跃的点评人(高关注数和好友数)的地理分布;点评人的个人简介中蕴含的特征词信息与地域的分布。
- 多个数据集综合分析:
- 各个电影的信息与其所有短评之间的关联,如根据短评判断电影的是喜剧片还是犯罪片。
- 各个点评人的信息与其所发出的所有短评之间的关联,如通过短评判断点评人的常居地。
- 构造模型,给定某电影信息和点评人信息,推断其会如何短评。
## 一、爬取豆瓣Top250的短评数据
首先,建立Scrapy爬虫project,名为“douban_movie”。
在完成整个的结业项目过程中,绝大部分时间都花在了豆瓣电影的爬虫上,其中大部分时间都花在防止403被ban或者爬取足够数目的items上。
关于Scrapy代码的细节和考虑可见douban_movie文件夹中的[README](./douban_movie/README)文件,其中会详述如何运行scrapy爬虫以及其中考虑到过的细节。
概要地说,所有的spider文件都设置独立的pipeline输出文件到`./douban_movie/data`中,并且除了`movie_item`,都各自自定义了downloadpipeline参数`'DOWNLOAD_DELAY': 1.8, `,以确保不会立马被ban。每个spider的爬取都是先login,然后跳转到目标解析URL来进行的;另为了提高爬取速度,对spiders做了DNS缓存,详情可见文件`./douban_movie/dns_cache.py`和spider文件中调用的`_setDNSCache()`函数;虽然书写了多个spiders并行爬取的代码,但是在实际的爬取过程中是采用部分spiders并行工作的,一般是2-3个spiders并行工作,以免被ban,详情查看文件`./douban_movie/setup.py`和文件夹`./douban_movie/commands/`。
在settings中,使用了faker代理:
```python
from faker import Factory
f = Factory.create()
USER_AGENT = f.user_agent()
```
还设置了尽量使用宽度优先的策略 `SCHEDULER_ORDER = 'BFO'`;最大requests数一口气设置到了1000:`CONCURRENT_REQUESTS = 1000` ;为了保证爬取状态下的页面整洁:`LOG_LEVEL = 'INFO'`;
对于爬取douban_people的时候,设置了无头浏览器缓冲加载,因为豆瓣短评人的网页上,目标要爬取信息是动态JS的。其设置的详情可见`./douban_movie/middlewares.py`,在这个文件中,指定了phantomjs的执行目录。
总体上,我
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
<项目介绍> TOP250豆瓣电影短评:Scrapy 爬虫+数据清理/分析+构建中文文本情感分析模型 - 不懂运行,下载完可以私聊问,可远程教学 该资源内项目源码是个人的毕设,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 --------
资源推荐
资源详情
资源评论
收起资源包目录
TOP250豆瓣电影短评:Scrapy 爬虫+数据清理分析+构建中文文本情感分析模型 (源代码+文档说明) (214个子文件)
classifier.model.bin 917KB
scrapy.cfg 268B
bou2_4l.dbf 148KB
bou2_4p.dbf 84KB
bou2_4p.dbf 84KB
bou2_4p.dbf 84KB
World_countries_shp.dbf 31KB
.floydexpt 70B
.floydignore 133B
.gitignore 0B
Filting-checkpoint.ipynb 1.11MB
Filting.ipynb 1.11MB
Untitled.ipynb 122KB
Untitled-checkpoint.ipynb 122KB
doubanlogo.jpeg 7KB
cover.jpg 252KB
movie_comment200.json 8.84MB
movie_comment200.json 8.84MB
movie_comment40.json 8.82MB
movie_comment40.json 8.82MB
movie_comment120.json 8.71MB
movie_comment120.json 8.71MB
movie_comment140.json 8.68MB
movie_comment140.json 8.68MB
movie_comment160.json 8.66MB
movie_comment160.json 8.66MB
movie_comment225.json 8.49MB
movie_comment225.json 8.49MB
movie_comment180.json 8.49MB
movie_comment180.json 8.49MB
movie_comment80.json 8.48MB
movie_comment80.json 8.48MB
movie_comment250.json 8.47MB
movie_comment250.json 8.47MB
movie_comment100.json 8.42MB
movie_comment100.json 8.42MB
movie_comment60.json 8.37MB
movie_comment60.json 8.37MB
movie_comment20.json 8.37MB
movie_comment20.json 8.37MB
movie_people15000.json 1.95MB
movie_people15000.json 1.95MB
movie_people5000.json 1.88MB
movie_people5000.json 1.88MB
movie_people10000.json 1.66MB
movie_people10000.json 1.66MB
movie_people20000.json 1.63MB
movie_people20000.json 1.63MB
movie_people30000.json 1.44MB
movie_people30000.json 1.44MB
movie_people35000.json 1.25MB
movie_people35000.json 1.25MB
movie_people25000.json 1.24MB
movie_people25000.json 1.24MB
movie_people40000.json 1.04MB
movie_people40000.json 1.04MB
movie_item.json 450KB
movie_item.json 450KB
movie_Xpeople1040.json 399KB
LICENSE 1KB
ghostdriver.log 8KB
ghostdriver.log 1KB
ghostdriver.log 0B
readme.md 88KB
people_url.out 1.48MB
X_people_url.out 41KB
movie_id.out 6KB
豆瓣电影TOP250的短评分析.pdf 2.95MB
WX20171009-132810.png 328KB
WX20171008-134032.png 308KB
WX20171008-132856.png 193KB
WX20171009-160340.png 147KB
WX20171021-163329.png 146KB
WX20171009-144044.png 141KB
WX20171009-154401.png 138KB
WX20171020-114114.png 97KB
WX20171009-102210.png 94KB
WX20171009-110955.png 85KB
WX20171020-121459.png 79KB
WX20171020-122409.png 79KB
WX20171009-130637.png 77KB
WX20171009-122139.png 75KB
WX20171008-133005.png 73KB
WX20171008-130206.png 65KB
WX20171020-114906.png 64KB
WX20171009-112226.png 54KB
WX20171020-113708.png 47KB
WX20171008-195120.png 45KB
WX20171008-135011.png 44KB
WX20171009-100103.png 43KB
WX20171009-095436.png 43KB
WX20171008-131840.png 42KB
WX20171009-104828.png 41KB
WX20171008-195315.png 41KB
WX20171008-155947.png 40KB
WX20171009-112538.png 39KB
WX20171020-111743.png 38KB
WX20171009-104934.png 37KB
WX20171008-160438.png 37KB
WX20171021-154225.png 36KB
共 214 条
- 1
- 2
- 3
资源评论
mldxxxxll5
- 粉丝: 3278
- 资源: 762
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功