差评近一半,用 Python 分析胡歌的《猎场》到底值不值得看?

原创 2017年11月21日 13:13:50

作者 | 布道

11 月 6 日,湖南卫视已经开播被称作年度压轴的大戏“猎场”,迅速占领各大榜单,成为一部高热度的电视剧。但是在豆瓣上却形成了两极分化。截止 11 月 8 日,该剧在豆瓣上的评分为 5.7 分。相比较胡歌之前《琅琊榜》的 9.1,《伪装者》的 8.3 等来说,这一评分确实不高。有趣的是,首页的评分比例与“短评”、“剧评”的比例存在非常大的差异!

首页总评分评分两级分化严重,“差评”占主 在目前 11463 个评价中两级分化严重,“1 星”占比最高为 28.6%,其次为“5 星”的 25.4%。“好评”(5 星、4 星)占比为 35.80%,“一般”(3 星)为 16.50%,“差评”(2 星、1 星)占比为 47.80%。很明显,“差评”占了接近一半的比例。

《猎场》豆瓣评分占比分布

在短评和剧评中的另一种景象 首页的豆瓣评分中“差评”占比很高,但是在豆瓣的短评和剧评中却是另一番景象。 在目前 5979 条短评中,“好评”占比 71%,“一般”为 5%,“差评”占比 24%。而在 392 条剧评中,“5 星”占了非常高的比例!84.7%的剧评给了“好评”。

《猎场》剧评评分分布

我们将三个位置的评分放在一起比较就会出现非常明显的差异。根据这个差异,我们可以大致判断:写出短评或者剧评的观众大部分给予了“好评”,但仍有大量观众直接给了差评,并没有说明任何原因。当然,我们并没有考虑那些不写评论,而只是点“有用”和“没用”观众。

才刚刚上映,剧情还在慢慢的铺,所以现在给整部剧下定论还太早。

《猎场》到底好不好看?我们还是想通过以 11 月 8 日为界,看看人们短评人的情绪,是积极,还是消息。利用词云看看大家都说了什么,希望能大家就是否建议观看给出建议。

一、爬取《猎场》热门短评,豆瓣的爬虫做的比较好,不登录爬虫很快就会被屏蔽掉,登录后获取 cookies 如下:

同时建议在循环抓取的时候进行 sleep,例如:

time.sleep(1 + float(random.randint(1, 100)) / 20)

《猎场》热门短评内容和时间爬取了 22440 条评论,代码如下:

import re
import requests
import codecs
import time
import random
from bs4 import BeautifulSoup
absolute = 'https://movie.douban.com/subject/26322642/comments'
absolute_url = 'https://movie.douban.com/subject/26322642/comments?start=23&limit=20&sort=new_score&status=P&percent_type='
url = 'https://movie.douban.com/subject/26322642/comments?start={}&limit=20&sort=new_score&status=P'
header={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:54.0) Gecko/20100101 Firefox/54.0','Connection':'keep-alive'}
def get_data(html):
    soup=BeautifulSoup(html,'lxml')
    comment_list = soup.select('.comment > p')
    next_page= soup.select('#paginator > a')[2].get('href')
    date_nodes = soup.select('..comment-time')
    return comment_list,next_page,date_nodes
if __name__ == '__main__':
    f_cookies = open('cookie.txt', 'r')
    cookies = {}
    for line in f_cookies.read().split(';'):
        name, value = line.strip().split('=', 1)
        cookies[name] = value
    html = requests.get(absolute_url, cookies=cookies, headers=header).content
    comment_list = []
    # 获取评论
    comment_list, next_page,date_nodes= get_data(html,)
    soup = BeautifulSoup(html, 'lxml')
    comment_list = []
    while (next_page != []):  #查看“下一页”的A标签链接
        print(absolute + next_page)
        html = requests.get(absolute + next_page, cookies=cookies, headers=header).content
        soup = BeautifulSoup(html, 'lxml')
        comment_list, next_page,date_nodes = get_data(html)
        with open("comments.txt", 'a', encoding='utf-8')as f:
            for node in comment_list:
                comment = node.get_text().strip().replace("\n", "")
                for date in date_nodes:
                    date= node.get_text().strip()
                    f.writelines((comment,date) + u'\n')
        time.sleep(1 + float(random.randint(1, 100)) / 20)

二、对数据进行清洗:

import pandas as pd
import matplotlib.pyplot as plt
date_name=['date','comment']
df = pd.read_csv('./comment.csv',header=None,names=date_name,encoding= 'utf-8')
df['date'] = pd.to_datetime(df['date'])

样本数量:

print(df['date'].value_counts())
获取2017-11-06 – 2017-11-08 数据:

data6 = df['2017-11-06':'2017-11-08']
data6.to_csv('6.txt', encoding = 'utf-8', index = False)
print(data6.size)
5775
获取2017-11-092017-11-17 数据:
data9 = df['2017-11-09':'2017-11-17']
data9.to_csv('9.txt', encoding = 'utf-8', index = False)
print(data9.size)
16665

三、情感分析和词云

对热门短评基于原有 SnowNLP 进行积极和消极情感分类,读取每段评论并依次进行情感值分析(代码:https://zhuanlan.zhihu.com/p/30107203),最后会计算出来一个 0-1 之间的值。

当值大于 0.5 时代表句子的情感极性偏向积极,当分值小于 0.5 时,情感极性偏向消极,当然越偏向两边,情绪越偏激。

2017-11-06 – 2017-11-08 分析:

从上图情感分析(代码:https://zhuanlan.zhihu.com/p/30107203 )来看,影评者还是还是非常积极的,对《猎场》的期望很高。

从词云(代码:https://zhuanlan.zhihu.com/p/30107203 )上来看:

2017-11-09 – 2017-11-17 分析

从上图情感分析(代码:https://zhuanlan.zhihu.com/p/30107203 )来看,积极的情绪已经远远超过消极的情绪,还是受到大家的好评。

从词云(代码:https://zhuanlan.zhihu.com/p/30107203 )上来看,出现好看、剧情、期待、喜欢等词。

总结

词云的背景是胡歌,大家看出来了嘛?目前豆瓣的分数已经是 6.2 分,目前剧情过半,相信接下来会更精彩,个人认为分数会在 7.5 分以上。

抛开豆瓣的推荐分数,通过的热门短评的情感和词云分析,是一部不错的现实剧,剧情犀利、深刻、启迪,很多人期待。如果您有时间,不妨看一下,或许能收获一些意想不到的东西。

版权声明:本文为博主原创文章,未经博主允许不得转载。

爬了知乎 200 万数据,图说程序员都喜欢去哪儿工作

点击上方“CSDN”,选择“置顶公众号” 关键时刻,第一时间送达! 因为最近和朋友吃饭,大家都到了大三季,都在纠结自己该以哪里作为自己职业发展的起点?也想看看自己的背景,能不能找到靠谱的师...

Python爬虫基础——利用cookie实现模拟登陆

Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。 举个例子,某些网站是需要登录后才能得到你想要的信息的,不登陆只能是游客模式,那么我们可以...

差评近一半,用 Python 分析胡歌的《猎场》到底值不值得看?

作者 | 布道 11 月 6 日,湖南卫视已经开播被称作年度压轴的大戏“猎场”,迅速占领各大榜单,成为一部高热度的电视剧。但是在豆瓣上却形成了两极分化。截止 11 月 8 日,该剧在豆瓣上的评分为 5...
  • kokocc
  • kokocc
  • 2017年11月27日 09:40
  • 57

用 Python分析胡歌的《猎场》到底值不值得看?

專 欄 ❈作者:布道,互联网运维负责人。负责公司和电商平台运维技术工作,带领团队在公司推行DevOps,践行“自动化、平台化、可视化”运维理念。目前主要关注几个方面:1.平台开发,作出更...

3D打印的“鸟巢”鞋 不知道值不值得拥有

对于3D打印技术,相信大家都不再陌生,它能打印玩偶模型,也能打印Bra,还能造房子,甚至打印鲜肉!可谓是衣食住行一条龙服务。 今天要介绍的是用3D打印技术做的高跟鞋,姑娘们不妨看看是否合你们胃口...

IOS11操作系统满满黑科技值不值得拥有?

原文链接 iOS11操作系统满满黑科技值不值得拥有? 发布时间:2017-05-11 13:11:531259人关注28人参与 还有不到一个月的时间,2017 WWDC大会就...

一转倾心 OPPO N1 mini降价 OPPO N1 mini值不值得购买介绍

一转倾心 OPPO N1 mini如今2480元,oppo公司一直致力于拍照功能的研发,其最新产品-----N1 mini更采用了旋转摄像头,让许多爱自拍的少女们心动不已,下面就一起来看看吧 ...

付费的「小密圈」值不值得我们加入呢?

听说最早听说小密圈是在2016年,小道消息的冯大辉老师在公众号发文说自己开通了小密圈。当时没有在意,只知道需要花199元才能加入这个圈子。进入2017年,似乎业内的大V们,尤其内容从业者们纷纷都选择开...
  • Marno__
  • Marno__
  • 2017年03月01日 09:09
  • 2885

胡歌热播剧《猎场》遭差评 “程序猿”用自然语言分析揭真相

今年11月6日,湖南卫视开播年度压轴剧《猎场》以来,该剧迅速占领各大榜单,成为一部高热都的电视剧。但是在豆瓣上,对该剧的评价却形成了两极分化的态势。相比胡歌之前作品如:《琅琊榜》的9.1分,《伪装者》...
  • moluka
  • moluka
  • 2017年11月26日 00:34
  • 79

【python 自然语言处理】对胡歌【猎场】电视剧评论进行情感值分析

主要内容1、什么是SnowNLP? 2、如何进行情绪判断? 3、猎场豆瓣热门短评抓取。 4、猎场热门短评情感分析。什么是SnowNLP? snowNLP,可以分词,标注,还可以进行情绪分析。 Sn...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:差评近一半,用 Python 分析胡歌的《猎场》到底值不值得看?
举报原因:
原因补充:

(最多只允许输入30个字)