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站后台,显示的不炫酷

相关推荐
卷无止境23 分钟前
独立开发者的"富矿地带":哪些垂直领域值得你押注一辈子?
后端·python
\光辉岁月/28 分钟前
5.java-数组
java·开发语言
Java后端的Ai之路29 分钟前
Python进阶探索29_eval内置函数
开发语言·python·探索·eval·内置函数
计算机毕业编程指导师30 分钟前
计算机毕设选题推荐:基于Hadoop与Spark的Steam游戏数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·spark·毕业设计·steam游戏
计算机毕业编程指导师35 分钟前
【计算机毕设选题推荐】基于Hadoop+Spark的白鹿抖音评论大数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·spark·毕业设计·抖音评论
谢亮_vipxieliang44 分钟前
Spring 事务失效的常见场景
java·开发语言·数据库·spring boot
Zootopia6261 小时前
飞行力学知识梳理1|飞行性能与稳定性
人工智能·python·算法·机器学习·无人机·学习方法·信息与通信
Y3815326621 小时前
搜索 API 延迟优化:并发数、超时与超时的真实代价
python·搜索引擎
时间的拾荒人1 小时前
Qt 多线程详解:从 QThread 到实战
开发语言·qt·面试
郑州光合科技余经理1 小时前
海外版外卖加盟:总站与分站配送规则怎么分开管
java·开发语言·前端·后端·uni-app·php·ai编程