目录

  • 1、《黑客帝国》背景介绍
  • 2、数据爬取
  • 3、描述统计分析(评价星级)
  • 4、情感分析
  • 分词关键字统计词云
    • 关键字
    • 分词词云

1、《黑客帝国》背景介绍

每个人的身上都潜藏这完美灵性世界的碎片,他们死后体内的“灵性碎片”便会脱离肉体束缚,重返宇宙之外那个的至善至美的世界,成为永恒。每个人都是身处黑暗宇宙的“异乡人”,他们的家乡在这个宇宙之外。
总体来说反向很不错豆瓣评分8.9分,四星以上评分占了90%以上,具体到每位观众如何呢?接下来就跟着老司机一起来一探究竟。

2、数据爬取

import requests
from lxml import etree
import time
import random
headers = {'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3','Accept-Encoding': 'gzip','Accept-Language': 'zh-CN,zh;q=0.9','Connection': 'keep-alive','Cookie': '_ga=GA1.2.557027477.1504366471; _vwo_uuid_v2=938EB395FEDF0DA9E9D90650DE9042F0|e0a43720af285a1e9923074545b60ff1; gr_user_id=d044fe6a-3a16-4f08-ad14-cc71033b6767; __utmv=30149280.16469; douban-fav-remind=1; bid=uZG6zNr6IdM; __yadk_uid=l4ZlS88dSS6QGaomSBmqi5XqNAaUQv5r; viewed="21477429_24703171_24746415_10769749_3288908_5377669_2201479_27055214_30203973_1088812"; acw_tc=2760823015682940060847273e162d65a7cec22e493c6aa10f371b90c5086c; ll="118092"; trc_cookie_storage=taboola%2520global%253Auser-id%3Da1a11787-6229-4357-a25a-b869f8653388-tuctb0db9e; ap_v=0,6.0; __utmc=30149280; __utmc=223695111; dbcl2="164698173:AM/bSYaNPzk"; ck=oih5; push_doumail_num=0; push_noty_num=0; _ck_desktop_mode=; vmode=; _gid=GA1.2.2054464412.1568389839; _pk_ref.100001.4cf6=%5B%22%22%2C%22%22%2C1568390107%2C%22https%3A%2F%2Fm.douban.com%2Fmovie%2Fsubject%2F1291843%2Fcomments%3Fsort%3Dnew_score%26start%3D50%22%5D; _pk_ses.100001.4cf6=*; __utma=30149280.557027477.1504366471.1568384207.1568390107.31; __utmb=30149280.0.10.1568390107; __utmz=30149280.1568390107.31.27.utmcsr=m.douban.com|utmccn=(referral)|utmcmd=referral|utmcct=/movie/subject/1291843/comments; __utma=223695111.557027477.1504366471.1568384207.1568390107.30; __utmb=223695111.0.10.1568390107; __utmz=223695111.1568390107.30.27.utmcsr=m.douban.com|utmccn=(referral)|utmcmd=referral|utmcct=/movie/subject/1291843/comments; _pk_id.100001.4cf6=b6270075d3f0f249.1516866774.32.1568391082.1568386453.','Host': 'movie.douban.com','User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/76.0.3809.132 Safari/537.36'}
if __name__ == '__main__':# 0、20、40、60、……490fp = open('./hacks.csv',mode='w',encoding='utf-8')fp.write('user\tcomment\tstar\tvote\tdate\n')url = 'https://movie.douban.com/subject/1291843/comments?start=%d&limit=20&sort=new_score&status=P'for i in range(0,26):if i == 25:url_comments = url%(490)else:url_comments = url%(i*20)response = requests.get(url=url_comments,headers = headers)response.encoding = 'utf-8'tree = etree.HTML(response.text)comments = tree.xpath('//div[@id="comments"]/div[@class="comment-item"]')for c in comments:user = c.xpath('.//div[@class="avatar"]/a/@title')[0]comment = c.xpath('.//span[@class="short"]/text()')[0].replace('\t', '')try:star = c.xpath('.//span[contains(@class,"allstar")]/@title')[0]except:star = 'none't = c.xpath('.//span[@class="comment-time "]/@title')[0]votes = c.xpath('.//span[@class="votes"]/text()')[0]fp.write('%s\t%s\t%s\t%s\t%s\n'%(user,comment,star,votes,t))print('第%d页数据保成功%d'%(i+1,len(comments)))time.sleep(random.uniform(1,5))fp.close()

3、描述统计分析(评价星级)

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
if __name__ == '__main__':data = pd.read_csv('./hacks.csv',sep = '\t')# 将爬虫获取数据评价等级化m = {'none':'0 stars','18':'2 stars','还行':'3 stars','推荐':'4 stars','力荐':'5 stars'}data['star'] = data['star'].map(m)bar_data = data['star'].value_counts()print(bar_data)plt.bar(x = np.arange(0,5),height = bar_data,width=0.5)plt.xticks(np.arange(0,5),labels = [i[1] for i in m.items()][::-1])plt.show()percent = data['star'].value_counts(normalize=True)plt.pie(percent,labels=[i[1] for i in m.items()][::-1],autopct = '%0.2f%%')plt.show()



整体来看,四星五星评价巨多,说明大家对于《黑客帝国》整体评价非常好!

4、情感分析

from snownlp import SnowNLP
import pandas as pd
def sentiment(content):s = SnowNLP(str(content))return s.sentiments
if __name__ == '__main__':data = pd.read_csv('./hacks.csv',sep = '\t')data['sentiment'] = data.comment.apply(sentiment)data.sort_values('sentiment',ascending=False,inplace=True)data.to_csv('./hacks2.csv',sep='\t',index=False)# 正面评价,在jupyter中显示效果会好print(data.iloc[:10])# 负面评价print(data.iloc[-10:])

先来看看正面评价,sentiment表示情感得分

看上去正面评价基本都是高星级评分的观众给出的,有理有据,令人信服。再来看看负面评价

这里的负面评价,言语偏少,但是像《黑客帝国》这样的电影,纵使我们认为给了负面评价,发现负面评价,也是比较‘正面的’,这就是大片的魅力。

分词关键字统计词云

通过jieba进行分词,根基TF-IDF算法提取关键词,代码及部分关键词如下

import pandas as pd
import jieba
from jieba import analyse
import wordcloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np
if __name__ == '__main__':data = pd.read_csv('./hacks.csv',sep = '\t')texts = ';'.join([str(c) for c in data.comment.tolist()])cut_text = ' '.join(jieba.cut(texts))keywords = jieba.analyse.extract_tags(cut_text,topK=500,withWeight=True,allowPOS=['ns', 'n', 'vn', 'v','nr','a','e'])words = pd.DataFrame(keywords,columns = ['词语','重要性'])# 关键字plt.barh(range(0,20),width = words['重要性'][:20][::-1])plt.ylabel('Importance')plt.yticks(range(0,20),labels=words['词语'][:20][::-1],fontproperties = 'KaiTi')plt.show()# 词云hack_mask = np.array(Image.open('./hack.jpg'))text_cloud = dict(keywords)cloud = wordcloud.WordCloud(width=500,font_path='./simkai.ttf',height=333,background_color='white',mask = hack_mask,max_words=500,max_font_size=150)plt.figure(figsize=(12,12))word_cloud = cloud.generate_from_frequencies(text_cloud)plt.imshow(word_cloud)plt.show()

关键字

分词词云



百度网盘代码下载百度网盘
提取码:0qag

Python数据分析《黑客帝国》-一切都不是偶然相关推荐

  1. 『对比Excel,轻松学习Python数据分析』新书发布

    之前在公众号提过,我写了一本书,现在这本书终于面世了,这本书就是『对比Excel,轻松学习Python数据分析』,这本书是写什么的,以及这本书怎么写的,相信大家通过书名就能了解一二,但还是有必要专门写 ...

  2. 好书推荐:《对比Excel,轻松学习Python数据分析》

    之前就一直有打算出一个结合Excel的Python数据分析的教程,刚好张俊红同学就出了书籍,后面写相关文章又多了一本好书.我首先说说我的看法,为什么要和Excel做结合了. Excel大家都熟悉,结合 ...

  3. Python数据分析是什么?为什么要对比Excel学习Python数据分析?

    Python 虽然是一门编程语言,但是它并不难学,不仅不难学,而且很容易上手,这也是Python深受广大数据从业者喜爱的原因之一,因此大家在学习Python之前首先在心里告诉自己一句话,那就是Pyth ...

  4. python 数据分析学什么-数据分析培训学习多久?都学什么?

    数据分析培训学习多久?以博学谷的Python数据分析与应用课程为例,学习数据分析只要22课时.那么都学什么呢?内容大概包括了Python数据分析的相关知识.感兴趣的小伙伴可以一起来看看课程介绍. 1. ...

  5. python 数据分析里axis=0/1 行列定义为什么每次都不同?(比如pandas, numpy, DataFrame)

    在numpy中, axis=0表示按列操作, axis=1表示按行操作 [20190819 作者注] 作者看了之后, 表示对以上结论表示怀疑 参考文章1: python数据分析里axis=0/1 行列 ...

  6. python集合中的元素不允许重复_Python语言中同一个集合中的元素不会重复,每个元素都是唯一的。-智慧树Python数据分析与数据可视化章节答案...

    Python数据分析与数据可视化:Python语言中同一个集合中的元素不会重复,每个元素都是唯一的.[?ж???] A:对 B:错 Python数据分析与数据可视化章节测试答案: 对 更多相关问题 智 ...

  7. EDG夺冠,用Python数据分析一波:粉丝都炸锅了

    EDG夺冠,粉丝炸锅了! 北京时间11月6日,在英雄联盟S11总决赛中,中国LPL赛区战队EDG电子竞技俱乐部以3∶2战胜韩国LCK赛区战队DK,获得2021年英雄联盟全球总决赛冠军. 这个比赛也是备 ...

  8. python数据分析网上培训

    大家好我是小星,相信有很多人和我一样,潜意识里对女生学习编程语言这件事有一种奇妙的感觉,女生学习编程到底是一种什么体验?今天我们六星教育Python课程的学员小花同学带来了她的看法,快来瞧瞧! 1.意 ...

  9. python数据分析要学什么_python数据分析学什么?python数据分析入门

    有很多没有基础的新手想学习python数据分析,却在纠结python数据分析难不难学?下面万古网校小编给大家整理了资料,为各位分享! 1.python难不难? Python可以说是目前比较主流而且易学 ...

  10. 为什么学习Python数据分析

    为什么学习Python数据分析?这是很多人都比较关注的一个问题,Python编程语言近几年在互联网行业是非常火爆的,尤其是在人工智能这一领域,它会大大的提高我们的工作效率等等,具体来看看下面的详细介绍 ...

最新文章

  1. bat 取得服务列表_基于IDEA热部署更新服务器Tomcat类,服务器Tomcat热更新
  2. Leetcode 206. 反转链表 解题思路及C++实现
  3. python整数和浮点数相乘_python中整数除法和浮点数到整数转换之间的区别是什么原因?...
  4. 唐敏豪:我给MSU评测打9分
  5. IOS UIPageControl的设置点为一张图片
  6. jQuery操作cookie
  7. python vbs库_Python语言之requests库
  8. hp服务器增加raid卡,惠普ProLiant服务器Raid卡配置过程详解
  9. STM32 - 定时器的设定 -高级- 08 - One-pulse mode - 触发波的实现 - 可变长度和相位
  10. 在Docker和Kubernetes上运行MongoDB微服务
  11. iPhone应用程序的启动过程
  12. 2021-08-04 Mysql联表查询
  13. cmd imp导入dmp文件_oracle导入dmp文件的2种方法
  14. 《SteamVR2.2.0快速入门》(Yanlz+Unity+XR+OpenVR+OpenXR+SteamVR+Valve+Vive+Oculus+Quickstart+HMD+立钻哥哥++ok++)
  15. PHP WebShell源码下载(1)
  16. 高考30条干货分享!去哪能找到高质量2021高考学习资源?
  17. 解决Error:403 No valid crumb was included in the request
  18. 插入U盘后 计算机未响应,电脑插入U盘后没有反应怎么办?
  19. Gallary(中)
  20. 关于sql server 2019的 卸载

热门文章

  1. 大一计算机实验报告excle,excel实验报告总结
  2. 汉王考勤系统服务器IP,汉王人脸识别考勤客户端使用说明
  3. stm32 OV7670/摄像头模块颜色区域定位(腐蚀中心算法)
  4. Java后台调用第三方接口
  5. Java 经纬度转UTM投影
  6. jdbc sql拼接字符串
  7. 我的世界神级种子Java_《我的世界》值得收藏的10个“神级种子”,最难找的遗迹都在这!...
  8. 计算机考研数学一大纲2016,2016考研大纲:计算机专业
  9. 最新手机号码、电话号码正则表达式
  10. 解决Arduino开发板管理器下载esp8266开发包失败和速度慢的方法