本文转载自微信公众号「志斌的python笔记」,作者志斌。转载本文请联系志斌的python笔记公众号。
大家好,我是志斌~
在此建党一百周年之际,祝愿我们的党生日快乐,祝愿我们的祖国繁荣昌盛!
刚刚志斌打开微博,发现热搜第一条是“今天的微博评论太好哭了“,它有263w+的热度。 于是志斌将这条微博下的评论,给全部爬取了下来,并做成词云图进行展示,看看网友们到底评论了什么,让人非常好哭!
需要源码的读者,加志斌微信获取哈~
01数据采集
志斌在之前的两篇文章中,详细的介绍了如何获取微博评论,有兴趣的读者可以看看这两篇文章批量爬取不同微博下的评论!爬取微博下全部评论数据~。这里志斌直接展示核心代码了,代码如下:
for page in range(1,10000):
if page == 1 :
params = (
('id', '4654152979845247'),
('mid', '4654152979845247'),
('max_id_type', '0'),
)
#s = requests.Session()
response = requests.get('https://m.weibo.cn/comments/hotflow', headers=headers, params=params)
a = response.json()['data']['max_id']
b = response.json()['data']['max_id_type']
for i in response.json()['data']['data']:
pinglunshijian = i['created_at']
neirong = re.sub(r'<[^>]*>', '', i['text'])
id = i['user']['id']
yonghumingcheng = i['user']['screen_name']
with open(r'71.txt', 'a', encoding='utf-8') as f:
f.write(f'{neirong}\n')
params = (
('id', '4654152979845247'),
('mid', '4654152979845247'),
('max_id', str(a)),
('max_id_type', str(b)),
)
print(f'爬取第{page}页数据......')
time.sleep(random.randint(1,3))
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
02词云图展示
我们一共获取了8262条数据,对这些数据进行词云图绘制,我们发现盛世、祖国、华夏、中国、我们、祝福、骄傲等词较多。看来评论里面都是祝福我们的祖国和感谢这盛世的!
志斌也点开这条热搜看了一下,里面的评论确实很让人泪目,尤其是这句:“我们生在国旗下,长在春风里;人民有信仰,国家有力量;目光所致皆为华夏,五星闪耀皆为信仰。”让志斌内心久久不能平静!
代码如下:
with open("71.txt",encoding='utf-8') as f:
job_title_1 = f.read()
contents_cut_job_title = jieba.cut(job_title_1)
contents_list_job_title = " ".join(contents_cut_job_title)
wc = WordCloud(stopwords=STOPWORDS.add("一个"), collocations=False,
background_color="white",
font_path=r"K:\苏新诗柳楷简.ttf",
width=400, height=300, random_state=42,
mask=imread('xin.jpg', pilmode="RGB")
)
wc.generate(contents_list_job_title)
wc.to_file("推荐语.png")
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
03小结
1. 今天上午看建党百年,听习近平总书记的重要讲话,感觉自己何其有幸,生于华夏,生于盛世,不经乱战,作为一名光荣的中共党员,自己以后定当不忘初心,牢记使命,以梦为马,不负韶华!
2. 本文仅作学习参考,不做它用。