Python爬虫分析微博热搜关键词的实现代码


Posted in Python onFebruary 22, 2021

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爬虫分析微博热搜关键词的文章就介绍到这了,更多相关Python爬虫微博热搜内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 学习笔记
Dec 27 Python
Python基于select实现的socket服务器
Apr 13 Python
Python 中pandas.read_excel详细介绍
Jun 23 Python
python+matplotlib绘制饼图散点图实例代码
Jan 20 Python
python实现多线程网页下载器
Apr 15 Python
python+POP3实现批量下载邮件附件
Jun 19 Python
Python使用sax模块解析XML文件示例
Apr 04 Python
Python获取基金网站网页内容、使用BeautifulSoup库分析html操作示例
Jun 04 Python
Python的形参和实参使用方式
Dec 24 Python
python 实现人和电脑猜拳的示例代码
Mar 02 Python
Python接口自动化测试的实现
Aug 28 Python
基于Python的EasyGUI学习实践
May 07 Python
anaconda升级sklearn版本的实现方法
Feb 22 #Python
详解Python 中的 defaultdict 数据类型
Feb 22 #Python
python快速安装OpenCV的步骤记录
Feb 22 #Python
Python中生成ndarray实例讲解
Feb 22 #Python
python爬虫利用代理池更换IP的方法步骤
Feb 21 #Python
Python用requests库爬取返回为空的解决办法
Feb 21 #Python
python利用proxybroker构建爬虫免费IP代理池的实现
Feb 21 #Python
You might like
如何使用PHP往windows中添加用户
2006/12/06 PHP
推荐几个开源的微信开发项目
2014/12/28 PHP
php从完整文件路径中分离文件目录和文件名的方法
2015/03/13 PHP
PHP文件上传之多文件上传的实现思路
2016/01/27 PHP
深入剖析浏览器退出之后php还会继续执行么
2016/05/17 PHP
PHP基于面向对象实现的留言本功能实例
2018/04/04 PHP
PHP设计模式之工厂模式(Factory Pattern)的讲解
2019/03/21 PHP
dojo 之基础篇(三)之向服务器发送数据
2007/03/24 Javascript
JavaScript constructor和instanceof,JSOO中的一对欢喜冤家
2009/05/25 Javascript
jquery 使用简明教程
2014/03/05 Javascript
js图片预加载示例
2014/04/30 Javascript
jQuery对于显示和隐藏等常用状态的判断方法
2014/12/13 Javascript
微信小程序 教程之小程序配置
2016/10/17 Javascript
Javascript中内建函数reduce的应用详解
2016/10/20 Javascript
JavaScript严格模式详解
2017/01/16 Javascript
socket.io学习教程之基础介绍(一)
2017/04/29 Javascript
使用node.js搭建服务器
2017/05/20 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
2017/08/25 Javascript
js使用原型对象(prototype)需要注意的地方
2017/08/28 Javascript
浅谈Javascript常用正则表达式应用
2019/03/08 Javascript
小程序中设置缓存过期的实现方法
2020/01/14 Javascript
js实现石头剪刀布游戏
2020/10/11 Javascript
[02:23]2014DOTA2国际邀请赛中国战队回顾
2014/08/01 DOTA
简单讲解Python编程中namedtuple类的用法
2016/06/21 Python
Python实现好友全头像的拼接实例(推荐)
2017/06/24 Python
Python表达式的优先级详解
2020/02/18 Python
python使用openpyxl操作excel的方法步骤
2020/05/28 Python
Python 字典中的所有方法及用法
2020/06/10 Python
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
2012/06/05 面试题
竞聘自述材料
2014/08/25 职场文书
工厂仓库管理员岗位职责
2015/04/09 职场文书
校长一岗双责责任书
2015/05/09 职场文书
《红领巾真好》教学反思
2016/02/16 职场文书
nginx常用命令放入shell脚本详解
2021/03/31 Servers
Win10服务全部禁用了怎么启动?Win10服务全部禁用解决方法
2022/09/23 数码科技