ihmily
DouyinLiveRecorder
Python

可循环值守和多人录制的直播录制软件,支持抖音、TikTok、Youtube、快手、虎牙、斗鱼、B站、小红书、pandatv、sooplive、flextv、popkontv、twitcasting、winktv、百度、微博、酷狗、17Live、Twitch、Acfun、CHZZK、shopee等40+平台直播录制

Last updated Jul 8, 2026
10.5k
Stars
1.4k
Forks
501
Issues
+77
Stars/day
Attention Score
89
Language breakdown
No language data available.
Files click to expand
README

video_spider

💡简介

Python Version Supported Platforms Docker Pulls GitHub issues Latest Release Downloads

一款简易的可循环值守的直播录制工具,基于FFmpeg实现多平台直播源录制,支持自定义配置录制以及直播状态推送。

😺已支持平台

  • [x] 抖音
  • [x] TikTok
  • [x] 快手
  • [x] 虎牙
  • [x] 斗鱼
  • [x] YY
  • [x] B站
  • [x] 小红书
  • [x] bigo
  • [x] blued
  • [x] SOOP(原AfreecaTV)
  • [x] 网易cc
  • [x] 千度热播
  • [x] PandaTV
  • [x] 猫耳FM
  • [x] Look直播
  • [x] WinkTV
  • [x] TTingLive(原Flextv)
  • [x] PopkonTV
  • [x] TwitCasting
  • [x] 百度直播
  • [x] 微博直播
  • [x] 酷狗直播
  • [x] TwitchTV
  • [x] LiveMe
  • [x] 花椒直播
  • [x] 流星直播
  • [x] ShowRoom
  • [x] Acfun
  • [x] 映客直播
  • [x] 音播直播
  • [x] 知乎直播
  • [x] CHZZK
  • [x] 嗨秀直播
  • [x] vv星球直播
  • [x] 17Live
  • [x] 浪Live
  • [x] 畅聊直播
  • [x] 飘飘直播
  • [x] 六间房直播
  • [x] 乐嗨直播
  • [x] 花猫直播
  • [x] Shopee
  • [x] Youtube
  • [x] 淘宝
  • [x] 京东
  • [x] Faceit
  • [x] 咪咕
  • [x] 连接直播
  • [x] 来秀直播
  • [x] Picarto
  • [ ] 更多平台正在更新中

🎈项目结构

.
└── DouyinLiveRecorder/
    ├── /config -> (config record)
    ├── /logs -> (save runing log file)
    ├── /backup_config -> (backup file)
    ├── /douyinliverecorder -> (package)
        ├── initializer.py-> (check and install nodejs)
    	├── spider.py-> (get live data)
    	├── stream.py-> (get live stream address)
    	├── utils.py -> (contains utility functions)
    	├── logger.py -> (logger handdle)
    	├── room.py -> (get room info)
    	├── ab_sign.py-> (generate dy token)
    	├── /javascript -> (some decrypt code)
    ├── main.py -> (main file)
    ├── ffmpeg_install.py -> (ffmpeg install script)
    ├── demo.py -> (call package test demo)
    ├── msg_push.py -> (send live status update message)
    ├── ffmpeg.exe -> (record video)
    ├── index.html -> (play m3u8 and flv video)
    ├── requirements.txt -> (library dependencies)
    ├── docker-compose.yaml -> (Container Orchestration File)
    ├── Dockerfile -> (Application Build Recipe)
    ├── StopRecording.vbs -> (stop recording script on Windows)
    ...

🌱使用说明

直播间链接示例:

抖音:
https://live.douyin.com/745964462470
https://v.douyin.com/iQFeBnt/
https://live.douyin.com/yall1102  (链接+抖音号)
https://v.douyin.com/CeiU5cbX  (主播主页地址)

TikTok: https://www.tiktok.com/@pearlgaga88/live

快手: https://live.kuaishou.com/u/yall1102

虎牙: https://www.huya.com/52333

斗鱼: https://www.douyu.com/3637778?dyshid= https://www.douyu.com/topic/wzDBLS6?rid=4921614&dyshid=

YY: https://www.yy.com/22490906/22490906

B站: https://live.bilibili.com/320

小红书(直播间分享地址): http://xhslink.com/xpJpfM

bigo直播: https://www.bigo.tv/cn/716418802

buled直播: https://app.blued.cn/live?id=Mp6G2R

SOOP: https://play.sooplive.co.kr/sw7love

网易cc: https://cc.163.com/583946984

千度热播: https://qiandurebo.com/web/video.php?roomnumber=33333

PandaTV: https://www.pandalive.co.kr/live/play/bara0109

猫耳FM: https://fm.missevan.com/live/868895007

Look直播: https://look.163.com/live?id=65108820&position=3

WinkTV: https://www.winktv.co.kr/live/play/anjer1004

FlexTV(TTinglive):: https://www.flextv.co.kr/channels/593127/live

PopkonTV: https://www.popkontv.com/live/view?castId=wjfal007&partnerCode=P-00117 https://www.popkontv.com/channel/notices?mcid=wjfal007&mcPartnerCode=P-00117

TwitCasting: https://twitcasting.tv/c:uonq

百度直播: https://live.baidu.com/m/media/pclive/pchome/live.html?roomid=9175031377&tabcategory

微博直播: https://weibo.com/l/wblive/p/show/1022:2321325026370190442592

酷狗直播: https://fanxing2.kugou.com/50428671?refer=2177&sourceFrom=

TwitchTV: https://www.twitch.tv/gamerbee

LiveMe: https://www.liveme.com/zh/v/17141543493018047815/index.html

花椒直播: https://www.huajiao.com/l/345096174

流星直播: https://www.7u66.com/100960

ShowRoom: https://www.showroom-live.com/room/profile?room_id=480206 (主播主页地址)

Acfun: https://live.acfun.cn/live/179922

映客直播: https://www.inke.cn/liveroom/index.html?uid=22954469&id=1720860391070904

音播直播: https://live.ybw1666.com/800002949

知乎直播: https://www.zhihu.com/people/ac3a467005c5d20381a82230101308e9 (主播主页地址)

CHZZK: https://chzzk.naver.com/live/458f6ec20b034f49e0fc6d03921646d2

嗨秀直播: https://www.haixiutv.com/6095106

VV星球直播: https://h5webcdn-pro.vvxqiu.com//activity/videoShare/videoShare.html?h5Server=https://h5p.vvxqiu.com&roomId=LP115924473&platformId=vvstar

17Live: https://17.live/en/live/6302408

浪Live: https://www.lang.live/en-US/room/3349463

畅聊直播: https://live.tlclw.com/106188

飘飘直播: https://m.pp.weimipopo.com/live/preview.html?uid=91648673&anchorUid=91625862&app=plpl

六间房直播: https://v.6.cn/634435

乐嗨直播: https://www.lehaitv.com/8059096

花猫直播: https://h.catshow168.com/live/preview.html?uid=19066357&anchorUid=18895331

Shopee: https://sg.shp.ee/GmpXeuf?uid=1006401066&session=802458

Youtube: https://www.youtube.com/watch?v=cS6zS5hi1w0

淘宝(需cookie): https://tbzb.taobao.com/live?liveId=532359023188 https://m.tb.cn/h.TWp0HTd

京东: https://3.cn/28MLBy-E

Faceit: https://www.faceit.com/zh/players/Compl1/stream

连接直播: https://show.lailianjie.com/10000258

咪咕直播: https://www.miguvideo.com/p/live/120000541321

来秀直播: https://www.imkktv.com/h5/share/video.html?uid=1845195&roomId=1710496

Picarto: https://www.picarto.tv/cuteavalanche

🎃源码运行

使用源码运行,可参考下面的步骤。

1.首先拉取或手动下载本仓库项目代码

git clone https://github.com/ihmily/DouyinLiveRecorder.git

2.进入项目文件夹,安装依赖

cd DouyinLiveRecorder
[!TIP]
- 不论你是否已安装 Python>=3.10 环境, 都推荐使用 uv 运行, 因为它可以自动管理虚拟环境和方便地管理 Python 版本, 不过这完全是可选的
使用以下命令安装
>    # 在 macOS 和 Linux 上安装 uv
> curl -LsSf https://astral.sh/uv/install.sh | sh >
>    # 在 Windows 上安装 uv
> powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex" >
- 如果安装依赖速度太慢, 你可以考虑使用国内 pip 镜像源:
pip 命令使用 -i 参数指定, 如 pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
或者在 uv 命令 --index 选项指定, 如 uv sync --index https://pypi.tuna.tsinghua.edu.cn/simple

如果已安装 Python>=3.10 环境

- :whitecheckmark: 在虚拟环境中安装 (推荐) 1. 创建虚拟环境

- 使用系统已安装的 Python, 不使用 uv

python -m venv .venv

- 使用 uv, 默认使用系统 Python, 你可以添加 --python 选项指定 Python 版本而不使用系统 Python uv官方文档

uv venv
2. 在终端激活虚拟环境 (在未安装 uv 或你想要手动激活虚拟环境时执行, 若已安装 uv, 可以跳过这一步, uv 会自动激活并使用虚拟环境) Bash
source .venv/Scripts/activate

Powershell

.venv\Scripts\activate.ps1
Windows CMD
.venv\Scripts\activate.bat

3. 安装依赖

# 使用 pip (若安装太慢或失败, 可使用 -i 指定镜像源)        pip3 install -U pip && pip3 install -r requirements.txt        # 或者使用 uv (可使用 --index 指定镜像源)        uv sync        # 或者        uv pip sync requirements.txt

- :x: 在系统 Python 环境中安装 (不推荐)

pip3 install -U pip && pip3 install -r requirements.txt

如果未安装 Python>=3.10 环境

你可以使用 uv 安装依赖

# uv 将使用 3.10 及以上的最新 python 发行版自动创建并使用虚拟环境, 可使用 --python 选项指定 python 版本, 参见 https://docs.astral.sh/uv/reference/cli/#uv-sync--python 和 https://docs.astral.sh/uv/reference/cli/#uv-pip-sync--python   uv sync   # 或   uv pip sync requirements.txt

3.安装FFmpeg,如果是Windows系统,这一步可跳过。对于Linux系统,执行以下命令安装

CentOS执行

yum install epel-release
yum install ffmpeg

Ubuntu则执行

apt update
apt install ffmpeg

macOS 执行

如果已经安装 Homebrew 请跳过这一步

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install ffmpeg

4.运行程序

python main.py
uv run main.py

其中Linux系统请使用python3 main.py 运行。

🐋容器运行

在运行命令之前,请确保您的机器上安装了 DockerDocker Compose

1.快速启动

最简单方法是运行项目中的 docker-compose.yaml 文件,只需简单执行以下命令:

docker-compose up

可选 -d 在后台运行。

2.构建镜像(可选)

如果你只想简单的运行程序,则不需要做这一步。Docker镜像仓库中代码版本可能不是最新的,如果要运行本仓库主分支最新代码,可以本地自定义构建,通过修改 docker-compose.yaml 文件,如将镜像名修改为 douyin-live-recorder:latest,并取消 # build: . 注释,然后再执行

docker build -t douyin-live-recorder:latest .
docker-compose up

或者直接使用下面命令进行构建并启动

docker-compose -f docker-compose.yaml up

3.停止容器实例

docker-compose stop

4.注意事项

①在docker容器内运行本程序之前,请先在配置文件中添加要录制的直播间地址。

②在容器内时,如果手动中断容器运行停止录制,会导致正在录制的视频文件损坏!

无论哪种运行方式,为避免手动中断或者异常中断导致录制的视频文件损坏的情况,推荐使用 ts 格式保存

🤖相关项目

❤️贡献者

   Hmily iridescentGray annidy wwkk2580 missuo xueli12 kaine1973 yinruiqing Max-Tortoise justdoiting dhbxs wujiyu115 zhanghao333 gyc0123

   HoratioShaw nov30th 727155455 nixingshiguang 1411430556 Ovear

⏳提交日志

- 修复抖音风控无法获取数据问题 - 新增soop.com录制支持 - 修复bigo录制 - 新增淘宝、京东、faceit直播录制 - 修复小红书直播流录制以及转码问题 - 修复畅聊、VV星球、flexTV直播录制 - 修复批量微信直播推送 - 新增email发送ssl和port配置 - 新增强制转h264配置 - 更新ffmpeg版本 - 重构包为异步函数! - 新增shopee、youtube直播录制 - 新增支持自定义m3u8、flv地址录制 - 新增自定义执行脚本,支持python、bat、bash等 - 修复YY直播、花椒直播和小红书直播录制 - 修复b站标题获取错误 - 修复log日志错误 - 新增嗨秀直播、vv星球直播、17Live、浪Live、SOOP、畅聊直播(原时光直播)、飘飘直播、六间房直播、乐嗨直播、花猫直播等10个平台直播录制 - 修复小红书直播录制,支持小红书作者主页地址录制直播 - 新增支持ntfy消息推送,以及新增支持批量推送多个地址(逗号分隔多个推送地址) - 修复Liveme直播录制、twitch直播录制 - 新增Windows平台一键停止录制VB脚本程序 - 新增邮箱和Bark推送 - 新增直播注释停止录制 - 优化分段录制 - 重构部分代码 - 新增知乎直播、CHZZK直播录制 - 修复音播直播录制 - 新增抖音双屏录制、音播直播录制 - 修复PandaTV、bigo直播录制 - 新增映客直播录制 - 新增时光直播录制 - 修复虎牙直播录制2分钟断流问题 - 新增自定义直播推送内容 - 新增Acfun、ShowRoom直播录制 - 修复微博录制、新增直播源线路 - 修复斗鱼直播60帧录制 - 修复酷狗直播录制 - 修复TikTok部分无法解析直播源 - 修复抖音无法录制连麦直播 - 修复部分虎牙直播间录制错误 - 修复花椒直播录制 - 更改文件路径解析方式 @kaine1973 - 修复抖音录制画质解析bug - 修复虎牙录制 60帧最高画质问题 - 新增流星直播录制 - 新增LiveMe、花椒直播录制 - 新增TwitchTV直播录制 - 新增酷狗直播录制、优化PopkonTV直播录制 - 新增百度直播录制、微博直播录制 - 修复斗鱼录制直播回放的问题 - 新增直播源地址显示以及输出到日志文件设置 - 修复海外平台录制bug,增加画质选择,增强录制稳定性 - 修复虎牙录制bug (虎牙一起看频道 有特殊限制,有时无法录制) - 修复虎牙直播、小红书直播和B站直播录制 - 新增5个直播平台录制,包括winktv、flextv、look、popkontv、twitcasting - 新增部分海外平台账号密码配置,实现自动登录并更新配置文件中的cookie - 新增自定义配置需要使用代理录制的平台 - 新增只推送开播消息不进行录制设置 - 修复了一些bug - 优化AfreecaTV录制,新增账号密码登录获取cookie以及持久保存 - 修复了小红书直播因官方更新直播域名,导致无法录制直播的问题 - 修复了更新URL配置文件的bug - 最后,祝大家新年快乐!

点击展开更多提交日志

- 新增猫耳FM直播录制 - 新增千度热播直播录制、新增pandaTV(韩国)直播录制 - 新增telegram直播状态消息推送,修复了某些bug - 新增自定义设置不同直播间的录制画质(即每个直播间录制画质可不同) - 修改录制视频保存路径为 downloads 文件夹,并且分平台进行保存。 - 新增网易cc直播录制,优化ffmpeg参数,修改AfreecaTV输入直播地址格式 - 修改日志记录器 @iridescentGray - 修复Linux上运行,新增docker配置文件 - 修复录制分段bug,修复bigo录制检测bug - 新增自定义修改录制主播名 - 新增AfreecaTV直播录制,修复某些可能会发生的bug - 新增blued直播录制,修复YY直播录制,新增直播结束消息推送 - 新增bigo直播录制 - 新增小红书直播录制(全网首发),目前小红书官方没有切换清晰度功能,因此直播录制也只有默认画质 - 小红书录制暂时无法循环监测,每次主播开启直播,都要重新获取一次链接 - 获取链接的方式为 将直播间转发到微信,在微信中打开后,复制页面的链接。 - 本次更新只是进行修复,没时间新增功能。 - 欢迎各位大佬提pr 帮忙更新维护 - 新增抖音从接口获取直播流,增强稳定性 - 修改快手获取直播流的方式,改用从官方接口获取 - 祝大家中秋节快乐! - 修复了快手版本更新后录制出错的问题,增加了其自动获取cookie(稳定性未知) - 修复了TikTok显示正在直播但不进行录制的问题 - 修复了因抖音官方更新了版本导致的录制出错以及短链接转换出错 - 修复B站无法录制原画视频的bug - 修改了配置文件字段,新增各平台自定义设置Cookie - 修复了TikTok录制时报644无法录制的问题 - 新增直播状态推送到钉钉和微信的功能,如有需要请看 设置推送教程 - 最近比较忙,其他问题有时间再更新 - 修复斗鱼直播(官方更新了字段)和快手直播录制出错的问题 - 新增B站直播录制 - 写了一个在线播放M3U8和FLV视频的网页源码,打开即可食用 - 新增YY直播录制 - 修复主播重新开播无法再次录制的问题 - 新增了斗鱼直播录制 - 修复显示录制完成之后会重新开始录制的问题 - 新增了虎牙直播录制,其暂时只能用flv视频流进行录制 - Web API 新增了快手和虎牙这两个平台的直播流解析(TikTok要代理) - 新增了快手直播录制,优化了部分代码 - 上传了一个自动化获取抖音直播间页面Cookie的代码,可以用于录制 - 通宵更新 - 新增了国际版抖音TikTok的直播录制,去除冗余 简化了部分代码 - 新增了一个通过抖音直播间地址获取直播视频流链接的API接口,上传即可用

有问题可以提issue, 我会在这里持续添加更多直播平台的录制 欢迎Star

####
🔗 More in this category