主要用到requests和bf4两个库将获得的信息保存在d://hotsearch.txt下importrequests;importbs4mylist=[]r=requests.get(ur…

很多人学习python,不知道从何学起。
很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。
很多已经做案例的人,却不知道如何去学习更加高深的知识。
那么针对这三类人,我给大家提供一个好的学习平台,免费领取视频教程,电子书籍,以及课程的源代码!
QQ群:883888997
主要用到requests和bf4两个库
将获得的信息保存在d://hotsearch.txt下

import requests;
import bs4
mylist=[]
r = requests.get(url='https://s.weibo.com/top/summary?Refer=top_hot&topnav=1&wvr=6',timeout=10)
print(r.status_code) # 获取返回状态
r.encoding=r.apparent_encoding
demo = r.text
from bs4 import BeautifulSoup
soup = BeautifulSoup(demo,"html.parser")
for link in soup.find('tbody') :
hotnumber=''
if isinstance(link,bs4.element.Tag):
# print(link('td'))
lis=link('td')
hotrank=lis[1]('a')[0].string#热搜排名
hotname=lis[1].find('span')#热搜名称
if isinstance(hotname,bs4.element.Tag):
hotnumber=hotname.string#热搜指数
pass
mylist.append([lis[0].string,hotrank,hotnumber,lis[2].string])
f=open("d://hotsearch.txt","w+")
for line in mylist:
f.write('%s %s %s %s\n'%(line[0],line[1],line[2],line[3]))

知识点扩展:利用python爬取微博热搜并进行数据分析
爬取微博热搜

import schedule
import pandas as pd
from datetime import datetime
import requests
from bs4 import BeautifulSoup
url = "https://s.weibo.com/top/summary?cate=realtimehot&sudaref=s.weibo.com&display=0&retcode=6102"
get_info_dict = {}
count = 0
def main():
global url, get_info_dict, count
get_info_list = []
print("正在爬取数据~~~")
html = requests.get(url).text
soup = BeautifulSoup(html, 'lxml')
for tr in soup.find_all(name='tr', class_=''):
get_info = get_info_dict.copy()
get_info['title'] = tr.find(class_='td-02').find(name='a').text
try:
get_info['num'] = eval(tr.find(class_='td-02').find(name='span').text)
except AttributeError:
get_info['num'] = None
get_info['time'] = datetime.now().strftime("%Y/%m/%d %H:%M")
get_info_list.append(get_info)
get_info_list = get_info_list[1:16]
df = pd.DataFrame(get_info_list)
if count == 0:
df.to_csv('datas.csv', mode='a+', index=False, encoding='gbk')
count += 1
else:
df.to_csv('datas.csv', mode='a+', index=False, header=False, encoding='gbk')
# 定时爬虫
schedule.every(1).minutes.do(main)
while True:
schedule.run_pending()

pyecharts数据分析

import pandas as pd
from pyecharts import options as opts
from pyecharts.charts import Bar, Timeline, Grid
from pyecharts.globals import ThemeType, CurrentConfig
df = pd.read_csv('datas.csv', encoding='gbk')
print(df)
t = Timeline(init_opts=opts.InitOpts(theme=ThemeType.MACARONS)) # 定制主题
for i in range(int(df.shape[0]/15)):
bar = (
Bar()
.add_xaxis(list(df['title'][i*15: i*15+15][::-1])) # x轴数据
.add_yaxis('num', list(df['num'][i*15: i*15+15][::-1])) # y轴数据
.reversal_axis() # 翻转
.set_global_opts( # 全局配置项
title_opts=opts.TitleOpts( # 标题配置项
title=f"{list(df['time'])[i * 15]}",
pos_right="5%", pos_bottom="15%",
title_textstyle_opts=opts.TextStyleOpts(
font_family='KaiTi', font_size=24, color='#FF1493'
)
),
xaxis_opts=opts.AxisOpts( # x轴配置项
splitline_opts=opts.SplitLineOpts(is_show=True),
),
yaxis_opts=opts.AxisOpts( # y轴配置项
splitline_opts=opts.SplitLineOpts(is_show=True),
axislabel_opts=opts.LabelOpts(color='#DC143C')
)
)
.set_series_opts( # 系列配置项
label_opts=opts.LabelOpts( # 标签配置
position="right", color='#9400D3')
)
)
grid = (
Grid()
.add(bar, grid_opts=opts.GridOpts(pos_left="24%"))
)
t.add(grid, "")
t.add_schema(
play_interval=1000, # 轮播速度
is_timeline_show=False, # 是否显示 timeline 组件
is_auto_play=True, # 是否自动播放
)
t.render('时间轮播图.html')

到此这篇关于如何用python爬取微博热搜数据并保存的文章就介绍到这了!
在这里推荐下我的Python开发学习群:883888997,群里都是学Python开发的,如果你想学或者正在学习Python ,欢迎你加入,大家都是软件开发党,不定期分享干货(只有Python软件开发相关的),包括我自己整理的一份最新的Python进阶资料和高级开发教程,欢迎进阶中和进想深入Python的小伙伴!

python爬取微博热搜数据并保存!相关推荐

  1. Python爬取微博热搜数据之炫酷可视化

    可视化展示 看完记得点个赞哟 微博炫酷可视化音乐组合版来了! 项目介绍 背景 现阶段,微博.抖音.快手.哗哩哗哩.微信公众号已经成为不少年轻人必备的"生活神器".在21世纪的今天, ...

  2. 用Python爬取微博热搜数据

    废话少说,直接上代码,然后再详细介绍构造过程. 代码 import urllib.request import re import pandas as pd import time import ra ...

  3. python爬取微博热搜写入数据库_python实现爬取微博热搜存入Mysql

    python爬取微博热搜存入Mysql最终的效果 使用的库 目标分析 一:得到数据 二:链接数据库 总代码 最终的效果 废话不多少,直接上图 这里可以清楚的看到,数据库里包含了日期,内容,和网站lin ...

  4. python爬取微博热搜榜

    python爬取微博热搜榜 最近应我大学室友得需求,做了一个简单的爬虫案例,先给大家看一下程序运行效果 接下来就是贴出代码了,在这里我会做一些简单说明,对如刚入门的同学可能会有所帮助,这里使用的是py ...

  5. Python爬取微博热搜榜,将数据存入数据库

    一直想学习用Python来进行数据的爬取,也一直想知道Python连接数据库的操作,今天刚好看到的这篇文章满足了这两个条件,我试着爬了下微博,并成功将数据添加到数据库中,颇为欢喜.作者写的很简单,有些 ...

  6. python爬取微博热搜显示到折线图_微博热搜榜前20信息数据爬取进行数据分析与可视化...

    一.设计方案 1.主题式网络爬虫名称:微博热搜榜前20信息数据爬取进行数据分析与可视化 2.爬取内容与数据特征分析:爬取微博热搜榜前20热搜事件.排名与热度,数据呈一定规律排序. 3.设计方案概述:思 ...

  7. python爬取微博热搜并存入表格_python爬虫进阶之爬取微博热搜存入Mysql

    在编程中,我们如果想要把数据转入数据库中,首先会选择 MySQL数据库.因为MySQL数据库体积小.速度快.总体拥有成本低.开放源代码,其有着广泛的应用,例如我们使用python爬虫微博热搜,就可以使 ...

  8. Python爬取微博热搜并定时发送邮件,及时了解最新动态!

    一.前言 微博热搜榜每天都会更新一些新鲜事,但是自己处于各种原因,肯定不能时刻关注着微博,为了与时代接轨,接受最新资讯,就寻思着用Python写个定时爬取微博热搜的并且发送QQ邮件的程序,这样每天可以 ...

  9. Python网络爬虫:爬取CSDN热搜数据 并保存到本地文件中

    hello,大家好,我是wangzirui32,今天我们来学习如何爬取CSDN热搜数据,并保存到Excel表格中. 开始学习吧! 学习目录 1. 数据包抓取 2. 编写代码 1. 数据包抓取 打开CS ...

最新文章

  1. 模型数据的保存和读取
  2. OOM?教你如何在PyTorch更高效地利用显存
  3. bzoj 1016: [JSOI2008]最小生成树计数【dfs+克鲁斯卡尔】
  4. Dev控件使用 - 皮肤
  5. Java多线程之线程池7大参数、底层工作原理、拒绝策略详解
  6. 计算机工程师英语介绍,数据库系统工程师计算机专业英语(四).doc
  7. 自定义曲线_Qt编写的项目作品17-自定义曲线图柱状图
  8. Ambari——大数据平台的搭建利器之进阶篇[配置spark]
  9. oracle物理结构视频教学,oracle物理结构
  10. web切图怎么做_网站制作的切图技巧 网页设计中的切图技巧介绍(图文)
  11. PYTHON Image Module中Pix[x,y]详解
  12. postman配置中文
  13. 既然选择了远方,便只顾风雨兼程
  14. 2023年北京理工大学理论力学考研上岸前辈备考经验指导
  15. 物流管理APP软件开发公司 让货运变得更简单
  16. 共享扫码娃娃机无现金化扫码支付
  17. 哈!他们的“自我修养” 穆穆-movno1
  18. Android车载性能自动化测试Case设计
  19. Easyrecovery13 for mac 易恢复软件 官方中文版下载
  20. 前端常用的超赞的配色网站

热门文章

  1. 九龙证券|长线资金整体加仓 青睐能源科技材料等板块
  2. 计算机走技术路线发展,硬件测试工程师发展前景_计算机硬件测试工程师_硬件测试工程师职责...
  3. OneTab扩展:解决 Chrome 内存占用过多问题
  4. 君士坦丁堡升级要点详解
  5. 清华大学尹成 怎么样
  6. cad用键盘放大缩小_CAD放大缩小快捷键 _ 2D3D网
  7. 整样运用计算机考试,计算机一级考试Word的十个应用技巧
  8. 华三交换机 RRPP V7版本
  9. #微信小程序# 在小程序里面退出退出小程序(navigator以及API--wx.exitMiniProgram)
  10. Excel中如何批量合并相同内容单元格