当前位置:   article > 正文

如何用python爬取视频_介绍Python爬取哔哩哔哩视频

python爬取哔哩哔哩视频

python视频教程栏目介绍如何爬取视频

本篇文章主要给大家讲解下如实使用python 爬取哔哩哔哩中的视频,首先我是一名大数据开发工程师,爬虫只是我的一个业余爱好,喜欢爬虫的小伙伴可以一起交流。好了多了就不多说了喜欢的朋有可以收藏,转发请复原文链接谢谢

一、环境准备

我这里使用的是环境如下仅供参考:

开发工具: pycharm

python环境:python-3.8.0

依赖的包: shutil,os,re,json,choice,requests,lxml

二、页面分析

我在这里就拿前段时间非常火的马老师的视频来举例子吧。

视频链接: https://www.bilibili.com/video/BV1Ef4y1i78b?from=search&seid=12072538764197074893视频链接解析 我们这里只需要 BV1Ef4y1i78b 也就是 video后面? 号前面

第二部分抓包,哔哩哔哩这里的视频被分成多个小段了经过看源码分析后我们可以解析

2b9837f83bc78cc8e8824e900c7aa456-1.png

分析返回json中的具体内容

返回给我们的们如下,真正对我们有用的信息在data中

c47fffc01c0dc7f28dafe238d9d2036d-2.png

在data 下面我们就可以清晰的看到我们想要的内容了,如视频的画质,以及视频的地址等,注意:如果你拿到地址直接进行访问的话是访问不到了,哔哩哔哩中添加了Referer如果你直接在浏览器访问是没有Referer的是找不到页面的。

我们需要解析的内容如下:视频的时长

视频的质量

视频的URL

音频的URL

音频和视频合并

c47fffc01c0dc7f28dafe238d9d2036d-3.png

三、代码实操

3.1 准备工作

依赖的包import jsonimport osimport reimport shutilimport sslimport timeimport requestsfrom concurrent.futures import ThreadPoolExecutorfrom random import choicefrom lxml import etree

添加请求头和随机用户代理#设置请求头等参数,防止被反爬headers = {

'Accept': '*/*',

'Accept-Language': 'en-US,en;q=0.5',

'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.116 Safari/537.36'}def get_user_agent():

'''获取随机用户代理'''

user_agents = [

"Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",

"Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/Cpp五条/article/detail/656965
推荐阅读
相关标签
  

闽ICP备14008679号