Python爬虫分析微博热搜关键词的实现代码
1,使用到的第三方库
requests
BeautifulSoup美味汤
worldcloud词云
jieba中文分词
matplotlib绘图
2,代码实现部分
importrequests
importwordcloud
importjieba
frombs4importBeautifulSoup
frommatplotlibimportpyplotasplt
frompylabimportmpl
#设置字体
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=[]
foritemindata:
d_list.append(item.text)
words=d_list[4:-11:]
#中文分词
result=list(jieba.cut(words[0]))
forwordinwords[1::]:
result.extend(jieba.cut(word))
redata=[]
foritinresult:
iflen(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=[],[]
#筛选数据
forstinkey:
count=redata.count(st)
ifcount<=1:
continue
else:
x.append(st)
y.append(count)
x.sort()
y.sort()
#绘制结果图
plt.plot(x,y)
plt.show()
exceptExceptionase:
print(e)
3,运行结果
到此这篇关于Python爬虫分析微博热搜关键词的文章就介绍到这了,更多相关Python爬虫微博热搜内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。