我的个人博客:https://jmbaozi.top/

这次选择了我最喜欢的电影《星际穿越》的短评,共爬取了500条评论,并且用jieba分词提取了100个关键词。程序文件点我查看

100个关键词中有感情色彩的"情感",“亲情”,“人性”,"煽情"权重值较高,也很好的反映了《星际迷航》剧情的走向和发展。“震撼”,“五星”,“神作”,"烧脑"等也说明了这部电影的深度和精彩。

剧情简介

近未来的地球黄沙遍野,小麦、秋葵等基础农作物相继因枯萎病灭绝,人类不再像从前那样仰望星空,放纵想象力和灵感的迸发,而是每日在沙尘暴的肆虐下倒数着所剩不多的光景。在家务农的前NASA宇航员库珀(马修·麦康纳 Matthew McConaughey 饰)接连在女儿墨菲(麦肯吉·弗依 Mackenzie Foy 饰)的书房发现奇怪的重力场现象,随即得知在某个未知区域内前NASA成员仍秘密进行一个拯救人类的计划。多年以前土星附近出现神秘虫洞,NASA借机将数名宇航员派遣到遥远的星系寻找适合居住的星球。在布兰德教授(迈克尔·凯恩 Michael Caine 饰)的劝说下,库珀忍痛告别了女儿,和其他三名专家教授女儿艾米莉亚·布兰德(安妮·海瑟薇 Anne Hathaway 饰)、罗米利(大卫·吉雅西 David Gyasi 饰)、多伊尔(韦斯·本特利 Wes Bentley 饰)搭乘宇宙飞船前往目前已知的最有希望的三颗星球考察。
  他们穿越遥远的星系银河,感受了一小时七年光阴的沧海桑田,窥见了未知星球和黑洞的壮伟与神秘。在浩瀚宇宙的绝望而孤独角落,总有一份超越了时空的笃定情怀将他们紧紧相连……

流程

  • 爬取短评
  • 保存评论
  • 用jieba模块提取关键词
  • 保存关键词及其权重值

游客访问豆瓣只能爬取11页评论,所以要先登入自己的账号,找到对应的Cookie作为标头,这样就可以爬取所有的短评了。(我把我的Cookie删掉了,你可以用你自己的Cookie来设置。)

1.爬取短评

def getComments(id,pageNum):movieComments = ""for i in range(pageNum):start = i*20url = "https://movie.douban.com/subject/"+str(id)+"/comments?start="+str(start)+"&limit=20&sort=new_score&status=P"headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.92 Safari/537.36 Edg/81.0.416.45','Cookie':''}print("正在爬取第%s页评论" % (i+1))r = requests.get(url,headers=headers)soup = BeautifulSoup(r.text,'lxml')commentsList = soup.find_all('span',class_ ='short')for comments in commentsList:movieComments += comments.textmovieComments += '\n'return movieComments

2.保存评论

def saveComments(Comments):try:fileName = 'movieComments.txt'with open(fileName,'w',encoding='utf-8') as f:f.write(str(Comments))print('保存成功!')except:print('保存失败!')

3.用jieba模块提取关键词

keyWord = []
Weight = []
def getData():with open('movieComments.txt',encoding = 'utf-8') as f:data = f.read()for keyword, weight in extract_tags(data, topK=100, withWeight=True):keyWord.append(keyword)Weight.append(weight)

4.保存关键词及其权重值

def saveData(keyWord,Weight):with open('TF-IDFanalyse.txt','w') as f:for i in range(len(keyWord)):f.write(str(i+1)+'.'+str(keyWord[i])+' '+str(Weight[i]))f.write('\n')

完整代码

"""
Author:JMbaozi
Movie:星际穿越
MovieID:1889243
Total:500条
"""import requests
import lxml
from bs4 import BeautifulSoupdef getComments(id,pageNum):movieComments = ""for i in range(pageNum):start = i*20url = "https://movie.douban.com/subject/"+str(id)+"/comments?start="+str(start)+"&limit=20&sort=new_score&status=P"headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.92 Safari/537.36 Edg/81.0.416.45','Cookie':''}print("正在爬取第%s页评论" % (i+1))r = requests.get(url,headers=headers)soup = BeautifulSoup(r.text,'lxml')commentsList = soup.find_all('span',class_ ='short')for comments in commentsList:movieComments += comments.textmovieComments += '\n'return movieCommentsdef saveComments(Comments):try:fileName = 'movieComments.txt'with open(fileName,'w',encoding='utf-8') as f:f.write(str(Comments))print('保存成功!')except:print('保存失败!')if __name__ == '__main__':id = '1889243'pageNum = 25Comments = getComments(id,pageNum)saveComments(Comments)
from jieba.analyse import *keyWord = []
Weight = []
def getData():with open('movieComments.txt',encoding = 'utf-8') as f:data = f.read()for keyword, weight in extract_tags(data, topK=100, withWeight=True):keyWord.append(keyword)Weight.append(weight)def saveData(keyWord,Weight):with open('TF-IDFanalyse.txt','w') as f:for i in range(len(keyWord)):f.write(str(i+1)+'.'+str(keyWord[i])+' '+str(Weight[i]))f.write('\n')if __name__ == '__main__':getData()saveData(keyWord,Weight)print('保存成功!')

关键词

1.诺兰 0.19128255202316988
2.科幻 0.08669831467647365
3.电影 0.07004029275176318
4.穿越 0.043706565954566165
5.2001 0.040535205408894104
6.宇宙 0.0390774600021518
7.星际 0.03854840219222222
8.科幻片 0.03784300316051122
9.太空 0.03710094608307251
10.人类 0.034267650954529646
11.情感 0.033682035815611196
12.配乐 0.029996254863928012
13.亲情 0.028100484168683708
14.一部 0.025336134155516433
15.黑洞 0.0228315852980386
16.维度 0.022820988241827506
17.马修 0.02268071150495566
18.时间 0.021990215372328294
19.IMAX 0.021826649066327596
20.海瑟薇 0.021826649066327596
21.这部 0.021009323347174404
22.觉得 0.0209916098498522
23.叙事 0.02028916028157277
24.还是 0.02009185130318901
25.三体 0.019747920583820206
26.维空间 0.01946205433994088
27.人性 0.019195052934319248
28.震撼 0.018861075408388106
29.故事 0.018623987979694834
30.片子 0.018587782274193183
31.就是 0.01845701333304295
32.好看 0.017171096338749782
33.五星 0.016971453380785078
34.神作 0.01662982786005912
35.煽情 0.01644735800772909
36.地球 0.016405385658789774
37.视觉 0.016082692005066075
38.剧情 0.015890286414849592
39.不是 0.01581558745247783
40.最后 0.015788916147563902
41.时空 0.015733520464966094
42.布里克 0.015232252310259086
43.一个 0.014942671648402885
44.没有 0.014884828384911319
45.空间 0.014683676518727179
46.烧脑 0.01455109937755173
47.漫游 0.014546960040672925
48.电影院 0.014500702134194054
49.小时 0.01448711635342462
50.观影 0.014157740237741261
51.本片 0.014144234288097723
52.导演 0.013783215358711529
53.流浪 0.013716555891909232
54.影片 0.01330736993218049
55.安妮 0.01321389088855851
56.宏大 0.012998647802761259
57.其实 0.012928227988101199
58.观众 0.012789650481029386
59.剪辑 0.012779753415423404
60.看到 0.01268860125678143
61.致敬 0.012515144182016172
62.麦康纳 0.01247237089504434
63.好莱坞 0.012462577262208311
64.喜欢 0.012394775697748217
65.设定 0.011891436046434532
66.可以 0.011884859227459573
67.结尾 0.011831460504264474
68.伟大 0.011494687704687881
69.泪点 0.011433006653790646
70.盗梦 0.011433006653790646
71.作品 0.011248776462072684
72.铺垫 0.011231949525746828
73.情节 0.011034970375954618
74.自己 0.011026725613583723
75.理论 0.010972225292832552
76.真的 0.01077571993532777
77.世界 0.010632135572592594
78.我们 0.010614453730798123
79.很多 0.010559647606611895
80.因为 0.010559150068362024
81.内核 0.010531053899008868
82.拯救 0.010488712177217006
83.脑洞 0.01039364241253695
84.感觉 0.010300038608547208
85.这么 0.010241186809707007
86.地心引力 0.0101751461264128
87.什么 0.009923567535106937
88.非常 0.009804860819493999
89.简直 0.009784356439056686
90.科学 0.009698408562667363
91.如果 0.009654979314181883
92.女儿 0.00941427966544601
93.... 0.009354278171283256
94.二刷 0.009354278171283256
95.完全 0.00922557320115806
96.五维 0.009186249675812903
97.但是 0.009071528849504434
98.温情 0.009056552719912188
99.父女 0.009056552719912188
100.镜头 0.008980044681533647

Python爬虫-爬取电影《星际穿越》评论并提取关键词相关推荐

  1. Python爬虫 爬取腾讯视频评论内容

    Python爬虫 爬取腾讯视频评论内容 腾讯视频评论内容在源码里是不可见,所以要使用抓包分析. 可安装fiddler代理服务器实现. 下面爬了腾讯视频评论内容(不包括回复),及发表评论者的id.昵称和 ...

  2. [python爬虫]爬取电影,电视剧

    目录 影视作品存储格式 爬取方法 实际操作 影视作品存储格式 网页中的小视频往往以 <video src="#"></video>存在,拿到src中的视频地 ...

  3. B站路飞学城学习笔记-Python爬虫-爬取电影分类排名-

    一.过程分析 1.先打开douban电影排行榜,点击喜剧部分 2.用鼠标滚轮向下翻页,同时按f12进行检查,点击Network中的Headers 3.我们可以发现Headers中有很多信息,比如Req ...

  4. python爬电影天堂_python爬虫爬取电影天堂电影

    python爬虫爬取电影天堂电影?本项目实现一个简单的爬虫,通过requests和BeautifulSoup爬取电影天堂电影信息,包括片名.年代.产地.类别.语言.海报链接和视频链接等内容.pytho ...

  5. Python爬虫爬取豆瓣电影评论内容,评论时间和评论人

    Python爬虫爬取豆瓣电影评论内容,评论时间和评论人 我们可以看到影评比较长,需要展开才能完整显示.但是在网页源码中是没有显示完整影评的.所以我们考虑到这部分应该是异步加载的方式显示.所以打开网页的 ...

  6. Python爬虫 爬取豆瓣电影TOP250

    Python爬虫 爬取豆瓣电影TOP250 最近在b站上学习了一下python的爬虫,实践爬取豆瓣的电影top250,现在对这两天的学习进行一下总结 主要分为三步: 爬取豆瓣top250的网页,并通过 ...

  7. python爬电影_使用Python多线程爬虫爬取电影天堂资源

    最近花些时间学习了一下Python,并写了一个多线程的爬虫程序来获取电影天堂上资源的迅雷下载地址,代码已经上传到GitHub上了,需要的同学可以自行下载.刚开始学习python希望可以获得宝贵的意见. ...

  8. php抓取微博评论,python爬虫爬取微博评论案例详解

    前几天,杨超越编程大赛火了,大家都在报名参加,而我也是其中的一员. 在我们的项目中,我负责的是数据爬取这块,我主要是把对于杨超越 的每一条评论的相关信息. 数据格式:{"name" ...

  9. python爬虫爬取豆瓣电影排行榜并通过pandas保存到Excel文件当中

    我们的需求是利用python爬虫爬取豆瓣电影排行榜数据,并将数据通过pandas保存到Excel文件当中(步骤详细) 我们用到的第三方库如下所示: import requests import pan ...

最新文章

  1. 一些http 响应码及含义
  2. CMake手册详解 (十二)
  3. [转] HOWTO:使ASP.NET网站Forms验证可以指定多个登录页面
  4. python list 去重_Python中对列表list去重
  5. IntelliJ IDEA---java的编译工具【转】
  6. pytorch和python有什么区别_PyTorch到底好用在哪里?
  7. 微信又添新表情,“我裂开了”!
  8. 嵌入式Linux的QT版本,嵌入式Linux版本Qt5.4快速部署
  9. 安装网站+服务器连接失败,为什么我都安装完成后是服务器连接失败啊
  10. 剑指offer之使数组的奇数在偶数前面
  11. Ubuntu16.04 安装Spyder问题
  12. Maven--Cargo远程部署
  13. Object-C 语法基础
  14. 说一说 oneway 吧,了解过这个修饰符作用吗?原理是什么?怎么理解单向调用?
  15. electron Mac版截图功能实现
  16. API,SDK和API之间的关系和区别
  17. zookeeper集群伪分布式安装测试-windows
  18. 3344avd_AVD生根
  19. 羊毛党千亿产业链,信息安全何去何从?
  20. 四元傅里叶显著性图-四元数-Matlab编程

热门文章

  1. 如何用EasyX文库绘制卡通头像
  2. 网维服务器加硬盘,网维大师官网-帮助
  3. 有限元_一维拉杆问题的求解方法(解析法、差分法、试函数法)
  4. Android Studio CPU profiler性能分析工具介绍和使用详解
  5. 记[HCTF 2018]Hideandseek
  6. Python列表知识汇总
  7. 使用OrthoMCL鉴定直系同源基因组
  8. 批量处理图形大小如何更改图片大小尺寸修改图片视频教程ps学习ps教程ps基础新教程
  9. android如何确保应用进程不被杀死,使得一个android应用不会被进程杀死
  10. PX4开发指南中文版维护说明