Python爬虫分析微博热搜关键词的实现代码
更新时间:2021年02月22日 10:15:41 作者:北晨lpl
这篇文章主要介绍了Python爬虫分析微博热搜关键词的实现代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
1,使用到的第三方库
requests
BeautifulSoup 美味汤
worldcloud 词云
jieba 中文分词
matplotlib 绘图
2,代码实现部分
import requests import wordcloud import jieba from bs4 import BeautifulSoup from matplotlib import pyplot as plt from pylab import mpl #设置字体 mpl.rcParams['font.sans-serif'] = ['SimHei'] mpl.rcParams['axes.unicode_minus'] = False url = 'https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6' try: #获取数据 r = requests.get(url) r.raise_for_status() r.encoding = r.apparent_encoding soup = BeautifulSoup(r.text,'html.parser') data = soup.find_all('a') d_list = [] for item in data: d_list.append(item.text) words = d_list[4:-11:] #中文分词 result = list(jieba.cut(words[0])) for word in words[1::]: result.extend(jieba.cut(word)) redata = [] for it in result: if len(it) <= 1: continue else: redata.append(it) result_str = ' '.join(redata) #输出词云图 font = r'C:\Windows\Fonts\simhei.ttf' w = wordcloud.WordCloud(font_path=font,width=600,height=400) w.generate(result_str) w.to_file('微博热搜关键词词云.png') key = list(set(redata)) x,y = [],[] #筛选数据 for st in key: count = redata.count(st) if count <= 1: continue else: x.append(st) y.append(count) x.sort() y.sort() #绘制结果图 plt.plot(x,y) plt.show() except Exception as e: print(e)
3,运行结果
到此这篇关于Python爬虫分析微博热搜关键词的文章就介绍到这了,更多相关Python爬虫微博热搜内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
利用Python脚本写端口扫描器socket,python-nmap
这篇文章主要介绍了利用Python脚本写端口扫描器socket,python-nmap,文章围绕主题展开详细介绍,具有一定的参考价值,需要的小伙伴可以参考一下2022-07-07DRF QuerySet Instance数据库操作功能概述
这篇文章主要为大家介绍了DRF QuerySet Instance数据库处理的功能概述,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-10-10
最新评论