分享一个使用Python爬取B站视频的脚本

查看 294|回复 10
作者:Naylor   
概述
可爬取指定视频,根据视频播放的url爬取。
步骤
  • 在B站中打开需要爬取的视频
  • 截取地址栏 “video/” 后面的部分到剪切板。如视频播放地址为:https://www.bilibili.com/video/BV1nY411a7T8?p=10&vd_source=5a0bdb26f67e959b0ff9c8e5954d0070  ,则输入:BV1nY411a7T8?p=10&vd_source=5a0bdb26f67e959b0ff9c8e5954d0070
  • 运行脚本,并粘贴剪切板中的内容
  • 等待程序运行完毕,视频将保存在D:/video 文件夹中

    脚本
    import json
    import sys
    import requests
    from you_get import common as you_get
    import time
    import traceback
    def down(video_id):
        list=[video_id]
        video_url = "https://www.bilibili.com/video/{0}"
        for o in list:
            try:
                v_url = video_url.format(o)
                print(v_url)
                sys.argv = ['you-get', '--debug', '-o', "D:/video",  v_url]
                you_get.main()
                time.sleep(10)
            except Exception as e:
                traceback.print_exc()
       
        return list
    if __name__ == "__main__":
        video_id = input("请输入视频id:")
        list = down(video_id)

    升级版
    根据视频播放urls批量下载,url用英文逗号分割,如输入:
    https://www.bilibili.com/video/BV1nY411a7T8?p=1&vd_source=5a0bdb26f67e959b0ff9c8e5954d0070,https://www.bilibili.com/video/BV1nY411a7T8?p=3&vd_source=5a0bdb26f67e959b0ff9c8e5954d0070,https://www.bilibili.com/video/BV1nY411a7T8?p=9&vd_source=5a0bdb26f67e959b0ff9c8e5954d0070,https://www.bilibili.com/video/BV1nY411a7T8?p=10&vd_source=5a0bdb26f67e959b0ff9c8e5954d0070
    脚本
    import json
    import sys
    import requests
    from you_get import common as you_get
    import time
    import traceback
    def down(urls):
        list=urls.split(',')
        for i in list:
            try:
                v_url = i
                print(v_url)
                sys.argv = ['you-get', '--debug', '-o', "D:/video",  v_url]
                you_get.main()
                time.sleep(10)
            except Exception as e:
                traceback.print_exc()
       
        return list
    if __name__ == "__main__":
        urls = input("请输入视频url集合,使用英文逗号分割:")
        list = down(urls)

    脚本, 视频

  • feiyu361   


    Helli 发表于 2022-12-22 15:09
    我有一个只要输入大会员cookies就可以下载大会员的下载器,你要吗?

    强啊, 等我需要了,联系你
    三滑稽甲苯   

    其实只需要BV号就可以获取完整信息,后面那一串是跟踪参数,对爬取没有用
    Lastackman   

    还不错,可以一试
    netpeng   

    感谢分享
    Allen333   

    刚好需要就看到了,多谢楼主
    xiliang   

    收藏一下,以备不时之需!感谢楼主分享!
    feiyu361   

    谢谢分享,这就下载大会员去
    csf2022   

    Mark一下研究研究
    cyantea   

    感谢分享!
    您需要登录后才可以回帖 登录 | 立即注册

    返回顶部