You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用ChatDownloader脚本加载本地文件而非URL?

使用ChatDownloader处理本地聊天记录文件的解决方案

完全可行,ChatDownloader支持读取本地已导出的聊天记录文件(如JSON格式),无需依赖在线URL。以下是具体实现方案:

前提准备

确保你的本地文件是ChatDownloader兼容的格式:

  • 如果还未导出聊天记录,可通过命令行先导出目标视频的聊天记录:
    chat_downloader https://www.youtube.com/watch?v=Ih2WTyY62J4 --output chat.json
    
    该命令会将聊天记录保存为chat.json,文件结构与在线获取的消息完全一致。

修改后的本地文件处理代码

from chat_downloader import ChatDownloader
import time
import json

# 替换为你的本地聊天记录文件路径
local_file_path = 'chat.json'

# 加载本地聊天记录
with open(local_file_path, 'r', encoding='utf-8') as f:
    chat_messages = json.load(f)

prev_time = 0
chat_instance = ChatDownloader()  # 初始化实例用于格式化打印消息

for message in chat_messages:
    # 模拟实时播放的时间延迟(不需要可直接删除此段)
    if prev_time is not None and 'time_in_seconds' in message:
        time.sleep(max(message['time_in_seconds'] - prev_time, 0))
    
    # 保持和在线模式一致的格式化输出
    chat_instance.print_formatted(message)
    
    prev_time = message.get('time_in_seconds')

关键说明

  • 数据源替换:将原代码中通过get_chat(url)获取在线消息,改为用json.load读取本地JSON文件,直接遍历已加载的消息列表。
  • 格式兼容:只要本地文件是ChatDownloader导出的JSON,消息结构(包含time_in_seconds、message等字段)就完全匹配,无需额外转换。
  • 自定义调整:如果不需要模拟实时播放的时间延迟,可直接删除time.sleep相关代码块,实现快速打印所有消息。

内容的提问来源于stack exchange,提问作者Tong Hop

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 00:05:21