admin管理员组

文章数量:1583698

目录标题

      • 前言
      • 环境介绍:
      • 代码实战
      • 获取数据
        • 获取视频
        • 采集弹幕
        • 采集评论
      • GUI部分
      • 尾语

前言

嗨喽~大家好呀,这里是魔王呐 ❤ ~!

今天我们分享一个用Python写下载视频+弹幕+评论的代码。

顺便把这些写成GUI,把这些功能放到一起让朋友用起来更方便~

环境介绍:

  • python 3.8

  • pycharm 2022专业版 >>> 免费使用教程文末名片获取

python资料、源码、教程\福利皆: 点击此处跳转文末名片获取

代码实战

主要代码分为界面和采集部分

获取数据

网址我屏蔽了,防止误杀。

获取视频
import requests
import re
import json
from pprint import  pprint
import subprocess
import os

def Video(bv_id):
    url = f'https://www.***/video/{bv_id}'
    headers = {
   
        # 防盗链
        'referer': 'https://www.***/video/',
        # 浏览器基本身份标识 表示浏览器
        'user-agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.0.0 Safari/537.36'
    }
    # 发送请求 ---> <Response [200]> 响应对象,  200状态码 表示请求成功
    response = requests.get(url=url, headers=headers)

    # 获取视频标题
    title = re.findall('"title":"(.*?)","pubdate"', response.text)[0].replace(' ', '')
    # 获取视频数据信息 前端标签两个两个一起
    html_data = re.findall('<script>window.__playinfo__=(.*?)</script>', response.text)[0]
    # 转换数据类型  字符串数据转成json字典数据类型
    json_data = json.loads(html_data)
    # print打印字典数据, 输出一行内容 print(json_data)
    # pprint 打印字典数据, 格式化输出 展开效果 pprint(json_data)
    # 字典数据 B站数据 音频和视频分开的 根据冒号左边的内容, 提取冒号右边的内容 键值对取值
    完整源码、解答、教程皆+VX:qian97378获取
    audio_url = json_data['data']['dash']['audio'][0]['baseUrl']
    video_url = json_data['data']['dash']['video'][0]['baseUrl']
    # 403 Forbidden 没有访问权限.....
    audio_content = requests.get(url=audio_url, headers=headers).content
    video_content = requests.get(url=video_url, headers=headers).content
    if not os.path.exists('video\\'):
        os.mkdir('video\\')
    with open('video\\' + title + '.mp3', mode='wb') as audio:
        audio.write(audio_content)
    with open('video\\' 

本文标签: 写了所有内容下载网站软件Python