B站之所以火 , 是因为趣味与知识并存 。它是一个重度宅腐二次元集结地 。B站包含动漫、漫画、游戏 , 也有很多由繁到简、五花八门的视频 , 很多冷门的软件和绘画技巧在B站都可以找到完整的教学视频 。正如一句“你在B站看番 , 我在B站学习” , B站还是有一些质量比较好的学习视频 。当你在B站上看到喜欢的视频想保存下来时 , 怎么办呢?
私信小编01即可获取大量Python学习资源转入正题 , 本篇推文主要介绍如何将B站上把喜欢的视频下载下来 , 帮助更多需要学习的小伙伴 , 详细步骤如下:
- 网页分析
- 视频下载方法
- 成果展示
微信视频号的加入 , 再度引燃了短视频领域 , 今天我们爬取B站的每天播放量最多的小视频 , 其他类型的视频可以参考这个方法 。
【怎么从b站上下载视频 python爬b站视频】网址为:
‘我们可以看到Request URL这个属性值 , 我们向下滑动加载视频的过程中 , 发现只有这段url是不变的 。next_offset 会一直变化 , 我们可以猜测 , 这个可能就是获取下一个视频序号 , 我们只需要把这部分参数取出来 , 把 next_offset 写成变量值 , 用 JSON 的格式返回到目标网页即可 。
http://vc.bilibili.com/p/eden/rank#/?tab=全部’
视频下载方法
上一部分已对网页进行了分析 , 现在我们可以利用requests.get方法来获取B站上的小视频 。
核心代码
def get_json(url):headers = {'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}params = {'page_size': 10,'next_offset': str(num),'tag': '今日热门','platform': 'pc'}try:html = requests.get(url, params=params, headers=headers)return html.json()except BaseException:print('request error')passdef download(url,path):start = time.time() # 开始时间size = 0headers = {'User-Agent':'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36'}response = requests.get(url,headers=headers,stream=True)chunk_size = 1024content_size = int(response.headers['content-length'])if response.status_code == 200:with open(path,'wb') as file:for data in response.iter_content(chunk_size=chunk_size):file.write(data)size= len(data)
成果展示上一部分我们已经展示了如何用Python下载视频的方法 , 下面我们进行效果展示 , 需要完整版代码的同学可以在公众号后台回复:B站代码
推荐阅读
- 芒果tv取消连续包月在哪里 芒果tv自动续费怎么取消
- 测试|测试你怎么做才能有人爱?
- 灭神天灵怎么弄,37灭神天灵系统属性提升玩法分享
- 守护者的试炼怎么获得,不思议迷宫守护者试炼攻略
- 攻城掠地兵器怎么用,2217《攻城掠地》之兵器系统介绍
- QQ水浒武将红龚旺怎么样,水浒人物地捷星花项虎龚旺
- 九天封神传承副本8关怎么过,37《九天封神》全新资料片首次曝光
- 七龙纪2怎么下载,听听游戏大伽怎么说
- 火工头陀怎么死的,真的是因为火工头陀吗
- 权倾三国 吕布怎么样,刘备从一无所有到权倾一方