前言
文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。
作者: 刘铨@ccis lab
ps:如有需要python学习资料的小伙伴可以加点击下方链接自行获取
一、分析url
1、分析豆瓣影评url
首先在豆瓣中,找到我们想要爬取的电影《冰雪奇缘2》
2、查看影片评论
二、爬取评论
分析网页源码
分析源码,可以看到评论在这个标签中,即代码为:
1 quest
2 from bs4 import beautifulsoup
3
4 def gethtml(url):
5 """获取url页面"""
6 headers = {'user-agent':'mozilla/5.0 (windows nt 10.0; wow64) applewebkit/537.36 (khtml, like gecko) chrome/62.0.3202.94 safari/537.36'}
7 req = quest(url,headers=headers)
8 req = quest.urlopen(req)
9 content = ad().decode('utf-8')
10 return content
11
12 def getcomment(url):
13 """解析html页面"""
14 html = gethtml(url)
15 soupcomment = beautifulsoup(html, 'html.parser')
16 comments = soupcomment.findall('span', 'short')
17 onepagecomments = []
18 for comment in comments:
19 onepagecomments.t()+'n')
20 return onepagecomments
21
22 if __name__ == '__main__':
23 f = open('冰雪奇缘2.txt', 'w', encoding='utf-8')
24 for page in range(10): # 豆瓣爬取多页评论需要验证。
25 url = '=' + str(20*page) + '&limit=20&sort=new_score&status=p'
26 print('第%s页的评论:' % (page+1))
27 print(url + 'n')
28 for i in getcomment(url):
29 f.write(i)
30 print(i)
31 print('n')
这里要注意的是,未登录用户只能查看前十页的评论,爬取更多评论需要先模拟登录。
三、进行词云展示
数据抓取下来之后,我们就来使用词云分析一下这部电影:
1、使用结巴分词
因为我们下载的影评是一段一段的文字,而我们做的词云是统计单词出现的次数,所以需要先分词。
1 import matplotlib.pyplot as plt
2 from wordcloud import wordcloud
3 from scipy.misc import imread
4 import jieba
5
6 text = open("冰雪奇缘2.txt","rb").read()
7 #结巴分词
8 wordlist = jieba.cut(text,cut_all=false)
9 wl = " ".join(wordlist)
2、使用词云分析
1 #设置词云
2 wc = wordcloud(background_color = "white", #设置背景颜色
3 mask = imread('black_mask.png'), #设置背景图片
4 max_words = 2000, #设置最大显示的字数
5 stopwords = ["的", "这种", "这样", "还是","就是", "这个", "没有" , "一个" , "什么", "电影", "一部","第一部", "第二部"], #设置停用词
6 font_path = "c:windowsf", # 设置为楷体 常规
7 #设置中文字体,使得词云可以显示(词云默认字体是“f字体库”,不支持中文)
8 max_font_size = 60, #设置字体最大值
9 random_state = 30, #设置有多少种随机生成状态,即有多少种配色方案
10 )
11 myword = wc.generate(wl)#生成词云
_file('result.png')
13
14 #展示词云图
15 plt.imshow(myword)
16 plt.axis("off")
17 plt.show()
最终结果:.
希望与广大网友互动??
点此进行留言吧!
本文发布于:2024-01-28 09:33:07,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17064055946475.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |