python 处理B站视频数据,数据存本地

python 处理B站视频数据,数据存本地

  • 绪论
  • 实现
    • [1 导入头文件](#1 导入头文件)
    • [2. 获得数据的函数](#2. 获得数据的函数)
    • [3 获取dvid](#3 获取dvid)
    • [4 获取数据,保存](#4 获取数据,保存)
  • 后续

绪论

上一个已经通过B站的API,来实现了对数据的读取,这篇文章就是,将数据存储在本地的TXT文件中

上一篇文章的连接:

链接: 使用python中的requests模块来实现B站视频数据的抓取

实现

实现大概分为三个步骤

  1. 打开文件,遍历,获得视频的dvid
  2. 根据读取到的ID,调用上一篇文章,获取视频数据
  3. 获取到数据后,将数据添加到文档

PS :数据的格式:时间,ID,标题,数字。。。描述

1 导入头文件

python 复制代码
import requests
import json
import re
import os

2. 获得数据的函数

python 复制代码
def getData(base_url):
    header={'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36'}
    r = requests.get(base_url,headers=header )#获取网页的信息

    _json_data = json.loads(r.text)#将数据进行格式转换,这样方便处理

    '''
    下面就是各个参数的获取,也可以根据自己的实际情况进行数据的获取
    '''
    bvid = _json_data.get('data').get('bvid')#视频的编号
    title = _json_data.get('data').get('title')#视频的名称
    desc = _json_data.get('data').get('desc')#视频的描述

    view = _json_data.get('data').get('stat').get('view')#播放量
    danmaku = _json_data.get('data').get('stat').get('danmaku')#弹幕
    reply = _json_data.get('data').get('stat').get('reply')#评论
    favorite = _json_data.get('data').get('stat').get('favorite')#收藏
    coin = _json_data.get('data').get('stat').get('coin')#投币
    share = _json_data.get('data').get('stat').get('share')#转发
    like = _json_data.get('data').get('stat').get('like')#点赞

    #数据都在data中存起来,方便后续的统一存储
    data = (
        "bvid:"+bvid+
          " title:"+title+
          " desc:"+desc+
          " view:"+str(view)+
          " danmaku:"+str(danmaku)+
          " reply:"+str(reply)+
          " favorite:"+str(favorite)+
          " coin:"+str(coin)+
          " share:"+str(share)+
          " like:"+str(like)+"\n\n"
         )

    return data#打印数据

3 获取dvid

python 复制代码
#获取bvid
video_bvid=open('bvid.txt', encoding='gbk')
video_bvid_data=[]
for line in video_bvid:
    video_bvid_data.append(line.strip())
print(video_bvid_data)

4 获取数据,保存

python 复制代码
#获取bvid
video_bvid=open('bvid.txt', encoding='gbk')
video_bvid_data=[]
for line in video_bvid:
    video_bvid_data.append(line.strip())
print(video_bvid_data)

后续

此功能基本实现对数据的自动统计

需要提升

  1. 数据直接统计到excel?或者数据库
  2. 配套的数据分析软件
  3. 自动定时统计数据
  4. 自动获取视频ID

还是要吐槽一下b站后台,显示的不炫酷

相关推荐
Marst Code11 分钟前
(Django)初步使用
后端·python·django
985小水博一枚呀29 分钟前
【对于Python爬虫的理解】数据挖掘、信息聚合、价格监控、新闻爬取等,附代码。
爬虫·python·深度学习·数据挖掘
立秋678940 分钟前
Python的defaultdict详解
服务器·windows·python
wjs20241 小时前
XSLT 实例:掌握 XML 转换的艺术
开发语言
萧鼎1 小时前
Python第三方库选择与使用陷阱避免
开发语言·python
安冬的码畜日常1 小时前
【D3.js in Action 3 精译_029】3.5 给 D3 条形图加注图表标签(上)
开发语言·前端·javascript·信息可视化·数据可视化·d3.js
一颗星星辰1 小时前
C语言 | 第十章 | 函数 作用域
c语言·开发语言
lxp1997411 小时前
php函数积累
开发语言·php
科技资讯早知道1 小时前
java计算机毕设课设—坦克大战游戏
java·开发语言·游戏·毕业设计·课程设计·毕设
白拾1 小时前
使用Conda管理python环境的指南
开发语言·python·conda