Python批量爬取抖音/快手/B站视频(附源码和exe)

去年行哥给大家介绍了一行Python代码下载各大网站的视频(公开视频),使用的工具包是you-get,具体使用方法如下:

Python批量爬取抖音/快手/B站视频(附源码和exe)_第1张图片

但是最近行哥需要进行批量下载抖音/快手等网站的视频,如果手动输入代码下载不是很方便。所以行哥希望先把要下载的视频地址统一放到一个txt文件里,之后再通过这个txt文件进行批量下载

  • 1.Python代码详解

  • 2.exe直接使用版本

1.Python代码详解

首先这个项目通过Python爬虫,返回一定格式的信息,并使用flask提供简易api进行下载。可下载各平台的视频、音乐和封面图片,只要有链接地址,它就能下载。具体可下载的平台和素材:

Python批量爬取抖音/快手/B站视频(附源码和exe)_第2张图片

上下滚动查看更多

核心代码如下,先读出txt文件里的内容并提取出其中的所有网址,之后进行解析生成对应的视频、音乐和图片下载地址,最后将地址里的内容进行下载,同时使用了多线程加快代码的批量下载速度

    path = "./一行数据公众号/爬取抖音/批量下载链接.txt"
    with open(path, 'r') as f:
        what = f.read()
    for i in "1":
        urls = parse_urls(what)
        if not urls:
            print("bye~")
            break
        print(f"""
╭━━━━━━━━━━━━━╮
│ 一共{len(urls)}个链接 │
╰━━━━━━━━━━━━━╯
        """)
        all_task = []
        for idx, url in enumerate(urls):
            print(f"正在解析第{idx+1}个链接【{url}】")
            data = get_data(url)
            if data:
                all_task.extend(data2tasks(data))
        queue = Queue(maxsize=100)
        for t in all_task:
            queue.put(t)
        ts = [Thread(target=dl, args=(queue, )) for _ in range(min(len(all_task), 6))]
        for t in ts:
            t.start()
        for t in ts:
            t.join()

运行结果如下:

Python批量爬取抖音/快手/B站视频(附源码和exe)_第3张图片

源码地址是:https://github.com/XiyaoWong/spiders,本文行哥对这位大佬的代码进行修改和封装,大家需要的话可以下载下来学习

2.Exe直接使用版本

行哥为了方便不会Python的读者使用,将其封装成了exe版本,只需要三个步骤就可以批量下载各大平台视频素材

Python批量爬取抖音/快手/B站视频(附源码和exe)_第4张图片
  • 1.点击【选择链接txt文件】,选择已保存很多链接的txt文件,例如

Python批量爬取抖音/快手/B站视频(附源码和exe)_第5张图片
  • 2.点击【选择路径】设置保存视频素材的文件地址

  • 3.点击【开始爬取】,下载进度会在命令窗口里实时显示

最终的exe下载结果如下,爬取下来的文件分别保存在videos(视频)和audios(音频)两个文件夹内,其中的视频皆为无水印版本:

Python批量爬取抖音/快手/B站视频(附源码和exe)_第6张图片

这个自动批量爬取视频的exe后台回复【一行08】可以获得

3.最后

现在在平台里按照某个id或分区的所有视频整体爬取还在开发中,有了解的读者可以来给行哥投稿哦,行哥撒币

——— / 往期精选 / ————

【人脸检测】50行Python代码实现颜值检测

   【Python游戏】十款经典Python游戏

【Python分析】贫穷的原因

【Python可视化】5000亿资产的展示

后台回复「进群」可以加入我们的社群哦~

你可能感兴趣的:(Python批量爬取抖音/快手/B站视频(附源码和exe))