python之数据分析可视化(b站排行播放量,简单详细)

关于

关于本次代码用到的库有xpath库和requests和pygal

xpath库的下载请点开此链接查看:https://blog.csdn.net/weixin_45859193/article/details/107452936
pygal用法

chart=pygal.Bar 获取全部方法
chart.title 标题
chart.x_labels x轴数据的名字
chart.x_title x轴居中位置填写的标题
chart.add 显示数据可视化
chart.render_in_browser 用浏览器的方式打开

前言

因为最近一直沉迷b站无法自拔,所以就想实现一下排行榜的播放量统计(可能是我闲得慌,所以想学一下数据分析的可视化 = =,我也是初学数据分析,如果有更好的方法欢迎评论指导!)

步骤与思路

如果想获取可视化,首先就得用爬虫把数据爬出来切转换成列表,所以第一步可以这样:
1.获取目标url地址
2.用xpath爬取我们想要的数据
3.清洗数据
4.保存数据
5.数据可视化

这几步搞清楚就ok了,很简单的。

代码

import requests
import pygal
from lxml import etree
url='https://www.bilibili.com/ranking/all/0/0/3'
headers={'user-agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.69 Safari/537.36'}
response=requests.get(url,headers=headers).content.decode()
html=etree.HTML(response)
flem_name=html.xpath('//div[@class="content"]//div[@class="info"]/a//text()')
link=html.xpath('//div[@class="detail"]//text()')
i=0
temp=[]
#清洗数据
for n in range(0,100):
    try:
        link[i]=link[i].split('万')[0]
        temp.append(float(link[i]))
        i+=3
        flem_name[n]='{}名 '.format(n+1)+flem_name[n]
    except:
        break

chart = pygal.Bar()

chart.title = "b站综合得分"

chart.x_labels=flem_name
chart.x_title='b站排行榜名单'

chart.add('播放量(万)',temp)
#浏览器打开
chart.render_in_browser()

效果

在这里插入图片描述

总结

勤学勤练,一定会获得成果的!!

猜你喜欢

转载自blog.csdn.net/weixin_45859193/article/details/107525767
今日推荐