精华内容
下载资源
问答
  • Python爬取微博热搜数据之炫酷可视化

    千次阅读 多人点赞 2021-02-15 15:11:17
    微博热搜刷一刷,聚焦热点不愁卖; 闲来发呆怎么办, B 站抖音快手来; 要是深夜无聊备,微信文章踩一踩; 哈哈哈,小小的活跃一下气氛 在这个万物互联的时代,已不再是那个“从前慢,车马慢....

     可视化展示

    看完记得点个赞哟

    微博炫酷可视化音乐组合版来了!

     

    项目介绍

    背景

    现阶段,微博、抖音、快手、哗哩哗哩、微信公众号已经成为不少年轻人必备的“生活神器”。在21世纪的今天,你又是如何获取外界的信息资源的?相信很多小伙伴应该属于下面这一种类型的:

    事情要想知道快,抖音平台马上拍;

    微博热搜刷一刷,聚焦热点不愁卖;

    闲来发呆怎么办, B 站抖音快手来;

    要是深夜无聊备,微信文章踩一踩;

    哈哈哈,小小的活跃一下气氛

    在这个万物互联的时代,已不再是那个“从前慢,车马慢......”的飞鸽传书三月天的时代了,数据每一天都有人在产生,也有人时刻在收集和监控数据,更是有人不断地在分析和利用数据产生潜在的价值。

    项目概览

    本次项目选取的是微博热搜数据,爬取加数据分析和可视化展示,基于微博热搜的娱乐项目。

    本次数据是选取之前的,并不是最新的微博数据,当然可以自己去运行代码就可以爬取最新的数据了!

    微博热搜数据爬取

    部分代码展示

    微博热度动态轮播图

    部分代码展示

    源码点击此处下载

    微博话题定位追踪可视化

    部分源码展示

    源码点击此处下载

    爬取微博热搜文章评论词云分析

    部分源码展示

    点击此处下载源码

    近期微博热搜话题词云展示

    点击此处下载源码

    其他项目点击此处


    项目代码展示

    微博热搜数据爬取

    选取微博热搜榜官网,网址如下:

    https://s.weibo.com/top/summary?cate=realtimehot&sudaref=s.weibo.com&display=0&retcode=6102

    1.通过简单对网页的解析与观察我们可以定位我们所需要的数据标签值,决定我们应该用什么解析库,可以用Xpath、正则表达式、beautifulsoup都可以实现功能,本次选取的是beautifulsoup进行对数据表的解析。

    2.同时我们需要注意的是微博反爬的措施,我们需要加入自己的请求头,我们借用一个第三方库,它可以随机产生一个可用的请求头来伪装我们的软件,模拟浏览器进行数据抓取:from fake_useragent import UserAgent

    3.微博热搜是每一分钟更新一次,我们需要用到定时爬取的模块,每一分钟爬取需要的数据:import schedule

    4.每一分钟爬取一次,一个小时爬取60种类数据,建议爬取开启5-7小时,让电脑自动抓取数据,那么就需要用到延时模块了:import time

    5.微博抓取的数据有排名、热搜标题、热度,为了我们方便展示和数据分析,我们需要给它加上时间戳,自动获取当前时间,引进:from datetime import datetime

    6.数据爬取好之后我们需要存储,我们采用pandas这个强大的数据分析库,进行数据的存储:import pandas as pd

     

    部分代码展示

    from fake_useragent import UserAgent
    import schedule
    import pandas as pd
    from datetime import datetime
    import requests
    from bs4 import BeautifulSoup
    import time
    
    ua = UserAgent()  # 解决了我们平时自己设置伪装头的繁琐,此库自动为我们弹出一个可用的模拟浏览器
    url = "https://s.weibo.com/top/summary?cate=realtimehot&sudaref=s.weibo.com&display=0&retcode=6102"
    headers = {"User-Agent": ua.random}
    get_info_dict = {}  # 创建一个数据字典
    count = 0
    a = 1
    
    def main():
        global url, get_info_dict, count, a
        get_info_list = []
        html = requests.get(url, headers).text  # 返回网页源码为txt文本
    
    # 定时爬虫
    schedule.every(1).minutes.do(main)  # 根据微博每隔一分钟更新一次数据,我们就每隔一分钟爬取数据
    while True:
        time.sleep(2)
        schedule.run_pending()  # 执行可执行结构
    

    微博热度动态轮播图

    可视化基于pyecharts这个强大的库,适合做这种比较炫酷的可视化展示,轮播图是如何去实现数据迭代展示的,我们一共爬取了多少次就会有多少次迭代循环,第一次提取出数据进行可视化,第二次继续提取,如果第二次的数据与第一次的数据不一样那么动态效果也就自然显示出来了,这样不断的去展示效果,再去设置一些参数:比如播放的帧数时间间隔等,那种动态的效果就会出来了。

    部分代码展示

    df = pd.read_csv('夜间微博.csv', encoding='gbk')#解码,注意这里不能使用utf-8,因为CSV文件使用gbk编码
    t = Timeline({"theme": ThemeType.MACARONS})  # 定制主题——动态直方图
    for i in range(389):#这里的参数设置为我们总共了爬取的多少次更新动态数据
        bar = (
            Bar()
            .add_xaxis(list(df['关键词'][i*20: i*20+20][::-1]))         # x轴数据
            .add_yaxis('热度', list(df['热度'][i*20: i*20+20][::-1]))   # y轴数据
            .reversal_axis()     # 翻转
            .set_global_opts(    # 全局配置项
                title_opts=opts.TitleOpts(  # 标题配置项
                    title=f"{list(df['时间'])[i*20]}",
                    pos_right="5%", pos_bottom="15%",
                    title_textstyle_opts=opts.TextStyleOpts(
                        font_family='KaiTi', font_size=24, color='#14d8ff'#颜色配置去:https://encycolorpedia.cn/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='#149bff')
                )
            )
            .set_series_opts(    # 系列配置项
                label_opts=opts.LabelOpts(  # 标签配置
                    position="right", color='#ff1435')

    源码点击此处下载

    微博话题定位追踪可视化

    对爬取的数据知识简单的轮播图展示热度,显得有点单调了,选取自己喜欢的话题去追踪定位它在这一个时间段里面的热度趋势,采用pyecharts这个动态折线图的展示效果,再结合Python原生态的算法添加数据,两者结合在一起如虎添翼。

    部分源码展示

     c = (
            Line(init_opts=opts.InitOpts(width="1400px", height="600px"))  # 画布大小
                .add_xaxis(x_data)  # 添加x轴
                .add_yaxis('周震南发声', y_1data, is_symbol_show=False, color=['red'])  # 添加第一个y轴
                .add_yaxis('男子第100次献血为自己庆生', y_2data, is_symbol_show=False, color=['blue'])
                .add_yaxis('全明星1111起挺你', y_3data, is_symbol_show=False, color=['purple'])
                .add_yaxis('辛芷蕾 我发型咋啦', y_4data, is_symbol_show=False, color=['green'])
                .set_global_opts(
                title_opts=opts.TitleOpts(title='微博热度走势图', subtitle="2020/10/27-凌晨1点热搜追踪图"),
                # 设置x轴的label字体的走向,由于x轴过多,显示不全,在这调整旋转角度
                xaxis_opts=opts.AxisOpts(axislabel_opts=opts.LabelOpts(rotate=90)),
                # 下面这是调整是否可以缩放的
                datazoom_opts=opts.DataZoomOpts(is_show=True),
            )
        )
    with open(r"热度跟踪图.txt", 'w', encoding="utf-8") as fi:
            for q in ll:
                fi.write('"' + q + '"' + ",")
            print("恒定时间写入成功!!")
            fi.write('\n热搜标题1:{}\n'.format(a))
            for w in ls:
                fi.write(w + ",")
            print("追踪热度1号写入成功!!")
            fi.write('\n热搜标题2:{}\n'.format(b))
            for w in lk:
                fi.write(w + ",")
            print("追踪热度2号写入成功!!")
            fi.write('\n热搜标题3:{}\n'.format(c))
            for w in lf:
                fi.write(w + ",")
            print("追踪热度3号写入成功!!")
            fi.write('\n热搜标题4:{}\n'.format(d))
            for w in le:
                fi.write(w + ",")
            print("追踪热度4号写入成功!!")

    源码点击此处下载

    爬取微博热搜文章评论词云分析

    结合抓包工具和浏览器的模拟点击,爬取微博文章评论,利用这个自动输出展示词云,让我们快速理解关于该话题文章的热搜趋势和热点,来看看周震南事件到底是什么东东

     

    部分源码展示

    import requests
    import json
    import pprint
    import re
    def get_comments(url):
        headers={
           "cookie":"WEIBOCN_FROM=1110006030; SUB=_2A25ykBYoDeRhGeNL6VQX9SzOzz-IHXVuerpgrDV6PUJbkdANLVnxkW1NSP633HCwOYWsoKRdojJu08k0-l9OKPoi; SUHB=09P9SVp1GiU0Dz; _T_WM=46932887560; XSRF-TOKEN=f40f69; MLOGIN=1; M_WEIBOCN_PARAMS=uicode%3D20000061%26fid%3D4563689719990147%26oid%3D4563689719990147",
            "Accept":"application/json, text/plain, */*",
            "MWeibo-Pwa":"1",
            "Referer":"https://m.weibo.cn/detail/4563874994983986",
            "User-Agent":"Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/84.0.4147.125 Mobile Safari/537.36",
            "X-Requested-With":"XMLHttpRequest",
            "X-XSRF-TOKEN":"50171a"
        }
        res=requests.get(url,headers=headers)
        ids=re.findall('u524d","id":"(.*?)",',res.text)
        file=open("评论.txt", "w", encoding='utf-8')
        for id in ids:
            s_url="https://m.weibo.cn/comments/hotflow?id={}&mid={}&max_id_type=0".format(id,id)
            print(s_url)
            sing_res = requests.get(url=s_url, headers=headers)
            sing_data = json.loads(sing_res.text)
            users = sing_data['data']['data']
            age_urls = re.findall('"profile_url":"(.*?)",', res.text)
    with open(r"评论.txt",encoding="utf-8") as file:
        a=file.read()
        b=jieba.lcut(a)
        for x in b:
            if x in ",。、;:‘’“”【】《》?、.!…\n":
                continue
            else:
                if len(x) == 1:
                    ll.append(x)
                elif len(x) == 2:
                    lg.append(x)
                elif len(x) == 3:
                    lk.append(x)
                elif len(x)== 4:
                    lj.append(x)
                #     lp.append(x)
        for i in lg:
            lp.append(i)
        for p in lk:
            lp.append(p)
        for f in lj:
            lp.append(f)
    

    点击此处下载源码

    近期微博热搜话题词云展示

    爬取近期一个月的微博热搜话题,看看大家最近都在聚焦什么,不多说了,这里涉及到的一些参数,首先请求头,cookies,能加的都加,我们只需要获取文字标题,可以通过Xpath来解决,源码里面是利用beautifulsoup这个一样的道理,最后输出为一个文本格式即可,抓包工具还是比较好的,一些看不到的数据我们可以通过这个神器来解决,自然动态加载还是Ajax都不是问题了。

    点击此处下载源码

     

    其他项目点击此处

    基于pyecharts可视化展示,动态可视化效果,后期在专栏《数据可视化之美》里面详细介绍pyecharts的用法和展示案例

     

    每文一语

     微 言细词览无余
     博 文入目皆可析
     数 秒分取千万条
     据 重方解图表均

    展开全文
  • 8_sig", mode="a+") time.sleep(random.randint(1,30)) Step1:确定网址 数据爬取的是微博热搜榜,解析网页信息并解码。 代码 req=urllib.request.Request(url) data=urllib.request.urlopen(req).read().decode('utf...

    废话少说,直接上代码,然后再详细介绍构造过程。

    代码

    import urllib.request
    import re
    import pandas as pd
    import time
    import random
    
    def getdata():
        url='https://s.weibo.com/top/summary?cate=realtimehot'
        req=urllib.request.Request(url)
        req.add_header('User-Agent',' Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36')
        data=urllib.request.urlopen(req).read().decode('utf-8')
        str1=str(data)
        pat1='">(.*?)</a>'
        pat2='<span>(.*?)</span>'
        result1=re.compile(pat1).findall(str1)
        result2=re.compile(pat2).findall(str1)
        a=result1[4:55]
        return a,result2
    
    if __name__ == '__main__':
        for i in range(0,15):
            name=time.strftime("%Y-%m-%d-%H-%M-%S",time.localtime())
            data=getdata()
            print('置顶榜为:',data[0][0])
            hot=data[0][1:56]
            dataframe = pd.DataFrame({'热搜榜': hot, '热点数:': data[1]})
            dataframe.to_csv(name+".csv", index=False, sep=',', encoding="utf_8_sig", mode="a+")
            time.sleep(random.randint(1,30))
    

    在这里插入图片描述
    在这里插入图片描述

    Step1:确定网址

    数据爬取的是微博热搜榜,解析网页信息并解码。

    代码

    req=urllib.request.Request(url)
    data=urllib.request.urlopen(req).read().decode('utf-8')
    

    在这里插入图片描述

    Step2:反爬机制

    有些网站需要定义反爬机制。

    代码

    req.add_header('User-Agent',' Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36')
    

    有关User-Agent的知识可参考Python爬虫:将User-Agent添加进网页请求头

    Step3:正则式匹配

    打开源数据网页,查看源代码,确定爬取数据的位置。见下图:
    在这里插入图片描述

    则爬取的位置是:

      <a href="/weibo?q=%E5%BE%97%E7%89%A9%E5%B4%A9%E4%BA%86&Refer=top" target="_blank">得物崩了</a>
      <a href="/weibo?q=%E8%89%BE%E6%AF%94%E5%B0%8F%E5%8F%B7&Refer=top" target="_blank">艾比小号</a>
      <a href="/weibo?q=%23%E4%B8%80%E8%B5%B7%E8%8B%97%E8%8B%97%E8%8B%97%E8%8B%97%E8%8B%97%23&Refer=top" target="_blank">一起苗苗苗苗苗</a>
      
    

      <span>1427950</span>
      <span>1373588</span>
     <span>1331551</span>
      
    

    确定正则匹配式:

      pat1='">(.*?)</a>'
      pat2='<span>(.*?)</span>'
    

    Step4:将爬取数据写入表格并保存

    首先导入pandas库。

    import pandas as pd
    

    写入表格并保存:

    dataframe = pd.DataFrame({'热搜榜': hot, '热点数:': data[1]})
    dataframe.to_csv(name+".csv", index=False, sep=',', encoding="utf_8_sig", mode="a+")
    

    至此所有的步骤都已完成。
    在这里插入图片描述

    展开全文
  • 主要用到requests和bf4两...到此这篇关于如何用python爬取微博热搜数据并保存的文章就介绍到这了,更多相关python爬取微博热搜数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    主要用到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]))

    78e8540bb29c050e5cd725fe8d1b9ee5.png

    知识点扩展:利用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爬取微博热搜数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    展开全文
  • 很多人学习python,不知道从何学起。 很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手。 很多已经做案例的人,却不知道如何去学习更加高深的知识。 那么针对这三类人,我给大家提供一个好的学习...

    主要用到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的小伙伴!

    展开全文
  • .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+") ...
  • 因为MySQL数据库体积小、速度快、总体拥有成本低、开放源代码,其有着广泛的应用,例如我们使用python爬虫微博热搜,就可以使用selenium爬取微博热搜存入Mysql。本文介绍使用python爬虫将爬取微博热搜存入Mysql的...
  • 介绍了可以实现定时执行任务的schedule模块,利用它实现定时爬取微博热搜数据,保存到CSV文件里。讲解pyehcarts绘制基本时间轮播图的基本方法,最后利用pyecharts实现数据的动态图可视化。
  • python爬取微博热搜存入Mysql最终的效果使用的库目标分析一:得到数据二:链接数据库总代码最终的效果废话不多少,直接上图这里可以清楚的看到,数据库里包含了日期,内容,和网站link下面我们来分析怎么实现使用的...
  • 最终的效果 废话不多少 直接上图这里可以清楚的看到 数据库里包含了日期 内容 和网站link 下面我们来分析怎么实现 使用的库 import requestsfrom selenium.webdriver import Chrome,python爬取微博热搜存入Mysql最终...
  • 利用requests和beautifulsoup爬取微博热搜;利用pandas和pyecharts进行数据分析
  • 【小盐巴学习笔记】—用Python爬取微博热搜前言一、爬虫分析1.分析数据二、完整代码总结 前言 今天爬取的方式还是正则,但写法略有不同,代码量更少 一、爬虫分析 首先看看今天要爬取微博热搜网址,如此...
  • Echarts(1):Python爬取微博热搜并用Echarts词云展示1.思路与实现流程​ 直接从微博中找不到微博的历史热搜数据的,可以通过这个网站 https://www.weibotop.cn/ 找到微博的历史热搜数据。爬取下来后保存为csv格式的...
  • 今天的教程就来说说如何爬取微博热搜榜。 热搜榜的链接是:用浏览器浏览,发现在不登录的情况下也可以正常查看,那就简单多了。使用开发者工具(F12)查看页面逻辑,并拿到每条热搜的CSS位置,方法如下:按照这个...
  • 源码包括: 通过python正则表达式爬取新浪微博热搜的标题与热度 连接mysql数据库,并将爬取数据直接写入数据库 mysql查询语句
  • Echarts(1):Python爬取微博热搜并用Echarts词云展示 1.思路与实现流程 ​ 直接从微博中找不到微博的历史热搜数据的,可以通过这个网站 https://www.weibotop.cn/ 找到微博的历史热搜数据。爬取下来后保存为csv格式的...
  • 爬取内容与数据特征分析:爬取微博热搜榜前20热搜事件、排名与热度,数据呈一定规律排序。3.设计方案概述:思路:首先打开目标网站,运用开发工具查看源代码,寻找数据标签,通过写爬虫代码获取所要的数据,将数据...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 140
精华内容 56
关键字:

python爬取微博热搜数据

python 订阅