正确展示用代码吃王力宏的瓜
本帖最后由 不二如是 于 2021-12-20 18:06 编辑在线视频:
https://www.bilibili.com/video/BV1sY411H75i?spm_id_from=333.999.0.0
年底的瓜有点猛吖,吃不过来了,上代码帮忙!
我们先找到微博源头出处:(传送门)
文中透漏的完全是一副好聚好散,岁月静好的气氛,好像用词有点不当了,不过也不纠结这些了。
这个评论量,哪里看的完,不数据分析一下,可能会漏掉一些精彩地方~
实现原理其实和小师妹之前做电影分析的教程一毛一样,来不急讲了,不会的自己去看~
https://www.bilibili.com/video/BV19N411X7ft?spm_id_from=333.999.0.0
迫不及待撸起代码了:
# 爬取一页评论内容
def get_one_page(url):
headers = {
'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3880.4 Safari/537.36',
'Host' : 'weibo.cn',
'Accept' : 'application/json, text/plain, */*',
'Accept-Language' : 'zh-CN,zh;q=0.9',
'Accept-Encoding' : 'gzip, deflate, br',
'Cookie' : '自己的Cookie',
'DNT' : '1',
'Connection' : 'keep-alive'
}
# 获取网页 html
response = requests.get(url, headers = headers, verify=False)
# 爬取成功
if response.status_code == 200:
# 返回值为 html 文档,传入到解析函数当中
return response.text
return None
记住 get_one_page(url) 中,Cookie 要换成你们自己的!
数据有了,来看下前十的词汇有哪些,主要代码实现如下:
stop_words = []
with open('stop_words.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
for line in lines:
stop_words.append(line.strip())
content = open('comments.txt', 'rb').read()
# jieba 分词
word_list = jieba.cut(content)
words = []
for word in word_list:
if word not in stop_words:
words.append(word)
wordcount = {}
for word in words:
if word != ' ':
wordcount = wordcount.get(word, 0)+1
wordtop = sorted(wordcount.items(), key=lambda x: x, reverse=True)[:10]
wx = []
wy = []
for w in wordtop:
wx.append(w)
wy.append(w)
(
再来生成个词云,看看:
**** Hidden Message *****
不做评论,让数据自己说话,这个瓜,好吃吗?
源码: 这瓜保熟 这瓜保熟 这瓜保熟 这瓜保熟 抱树吗 这瓜保熟 这瓜保熟 这瓜保熟 这瓜保熟 请教下,代码里用来统计词语出现频率,生成词条,生成云图都是用到了什么函数或者库?
能否告诉我下用到的函数名字,或者库名?
这块的知识还没学到,想了解,学习下。 这瓜保熟 这瓜保熟 这瓜熟 这瓜保熟 这瓜保熟 这瓜保熟 这瓜保熟 这瓜保熟 非凡 发表于 2021-12-18 19:15
请教下,代码里用来统计词语出现频率,生成词条,生成云图都是用到了什么函数或者库?
能否告诉我下用到的 ...
你可以下载源码看头部代码就知道了