千家信息网

如何用Python对b站的小视频进行爬取

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章给大家介绍如何用Python对b站的小视频进行爬取,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。我用 Python 对 b 站的小视频进行了爬取,因为是小视频,大小平均在
千家信息网最后更新 2026年11月03日如何用Python对b站的小视频进行爬取

这篇文章给大家介绍如何用Python对b站的小视频进行爬取,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

我用 Python 对 b 站的小视频进行了爬取,因为是小视频,大小平均在 5 兆以内。排队时,没网络也能看小姐姐了,爽啊。文末给出了源码获取方式。

b 站小视频地址:

http://vc.bilibili.com/p/eden/rank#/?tab=全部

我爬取了每日的小视频排行榜,学会了每日的,爬取本周、本月的就非常简单了,改个标签就行,稍后详细分析会讲到。以下是爬取结果。

项目环境

语言:Python3
工具:Pycharm

程序结构

主要由 3 部分组成:

  • get_json():提取目标网页的 json 数据信息。

  • downloader():下载小视频并显示下载进度。

  • 主函数:循环下载视频直到下载完毕。

代码分析

打开网站往下滑动,视频是动态加载的,打开调试工具,向下滑动加载视频,查看 Headers 中 url ,url 中前面部分的链接是不变的,提取出来。(左右滑动查看全部代码)

http://api.vc.bilibili.com/board/v1/ranking/top?

观察下方参数的变化,发现只有 next_offset 这个字段在变,每次都比前一个多 10。

这就好办了,我们把参数部分单独拿出来,把可变的 next_offset 写成变量,返回目标网页的 json 数据。

接下来,我把小视频下载下来,为了美观,我做了个下载器,显示下载速度。效果如下。

此处有个地方需注意下,请求目标网页时必须带上此网页的 headers 信息,网站做了反爬操作,否则下载下来的视频是空的,部分代码如下。(ps:大家运行代码时把 headers 换成自己浏览器在本网页的 headers 即可)

主函数中为了提取更多视频,我们把 next_offset 这个变量做个循坏,然后从 json 数据中提取视频的标题和可下载的链接。观察下页面的 json 数据结构就可以轻松获取文章标题和下载链接数据。

为了防止有些视频没有提供下载链接的情况,我加了异常处理,细心的朋友应该发现了文章前面给的效果图只有84个视频,原因就在此。最后,为了防止 ip 被封,设置了随机等待时间。其实,总体下来,不到 5 分钟,100 个视频可以全部下载完毕。

关于如何用Python对b站的小视频进行爬取就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

视频 数据 网页 代码 部分 链接 文章 更多 目标 信息 内容 函数 参数 变量 只有 工具 效果 标题 结构 网站 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 华服互联网科技靠谱吗 伟宏互联网科技 中关村互联网 科技集团 中国互联网科技工作委员会毛军 互联网科技公司电话 奇士达互联网科技 伴你行互联网科技有限公司 互联网科技宣传片 居家互联网科技有限公司 美国互联网前沿科技 互联网科技公司的市场部门 互联网教育科技公司vipkid 坤平互联网科技 小米互联网科技园入驻 互联网企业科技类企业如何做账 浙南科技城互联网大厦招聘 互联网领先科技成果宣传视频 上海旺乐尼互联网科技有限公司 宁波允成互联网科技有限公司 高科技和互联网的现代国家 中资互联网科技 上海互联网科技有限公司 广州凡科互联网科技 开一家科技互联网公司需要多少钱 允成互联网科技有限公司融资 无锡工业互联网科技有限公司 福州德业互联网科技 银川新华互联网科技学校原画 高科技和互联网的现代国家 互联网 科技节活动 微视频大赛
0