python爬取某网站视频(简易实现易上手) 您所在的位置:网站首页 如何爬取网页上的视频 python爬取某网站视频(简易实现易上手)

python爬取某网站视频(简易实现易上手)

2023-07-19 19:57| 来源: 网络整理| 查看: 265

需要用到的库

import os import requests from fake_useragent import UserAgent import json import re import pprint

以及需要用到合成音频和视频的一个软件FFmpeg

FFmpeg下载参考教程

然后到我们的代码实现

import os import requests from fake_useragent import UserAgent import json import re import pprint # 只下载 合成视频另外利用FFmpeg ua = UserAgent() #因为版权问题没有声明 这里是b#站视频url url = input("请输入下载视频的网址url") header = { 'user-agent': ua.chrome, 'cookie': "buvid3=CFF66230-3E56-A189-9247-B05616FE9B0788580infoc; b_nut=1669435988; i-wanna-go-back=-1; b_lsid=FBD83BF6_184B2239B37; _uuid=B2B2A2F6-105110-88B1-848B-105D5C196310CA88800infoc; buvid4=026A855C-18D0-20F5-5FA7-119D934A2B0768759-022012508-bQg6aOCdw/QjUicgU95kvA%3D%3D; fingerprint=a877a9d4e7335ad9b9271f6b39fa9c8e; buvid_fp_plain=undefined; SESSDATA=867012e8%2C1684988005%2Cd8787%2Ab2; bili_jct=921f6a9b7d03a90d7fc89748aea4f40d; DedeUserID=507703146; DedeUserID__ckMd5=0a06cbbc99bc0cca; buvid_fp=91c4744a50648918c27547d565b6689d; bp_video_offset_507703146=732702986882515100; CURRENT_FNVAL=4048; sid=7sbhfwlu; theme_style=light; rpdid=|(m)mJ~kYmk0J'uYYmRJY|Yu; nostalgia_conf=-1; innersign=0; b_ut=5; PVID=1", 'sec-ch-ua': '";Not A Brand";v="99", "Chromium";v="94"', 'sec-ch-ua-mobile': '?0', 'sec-ch-ua-platform': 'Windows', 'sec-fetch-dest': 'document', 'sec-fetch-mode': 'navigate', 'sec-fetch-site': 'none', 'sec-fetch-user': '?1', 'referer': 'https://space.bilibili.com/229733301/video' } response = requests.get(url=url, headers=header, timeout=3) # 找到脚本里面视频和音频的url html_data = re.findall('window.__playinfo__=(.*?)', response.text)[0] # 转换成json数据 json_data = json.loads(html_data) # pprint.pprint(json_data) # 分别获取音频和视频数据 video_url = json_data['data']['dash']['video'][0]['base_url'] audio_url = json_data['data']['dash']['audio'][0]['base_url'] # print(response.text) # 找到页面里的标题 title = re.findall('', response.text)[0] video_info = [title, video_url, audio_url] print("正在下载视频:", title) # print(video_url) # print(audio_url) # 获取二进制数据 # 音频 audio_content = requests.get(url=audio_url, headers=header).content # 视频 video_content = requests.get(url=video_url, headers=header).content with open(title + '.mp3', mode='wb') as f: f.write(audio_content) with open(title + '.mp4', mode='wb') as f: f.write(video_content) print("下载完成")

url就是某站视频上方那一段网址 复制输入进去就行了 最后下载得到两个音频和视频文件

这里我们利用ffmpeg合成

首先win+r 输入cmd 打开命令提示符 先cd到当前文件夹 然后输入代码ffmpeg-i {title}.mp4 -i {title}.mp3 {title}output.mp4 合成

title是文件名 最好的{title}output是输出的文件名 可以自己随意更改。

最后视频就合成好了 可以正常观看

ffmpeg软件功能其实很多 可以继续学习 有更多的效果。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有