ytube-transcript-wlang-v2

Package Information

Released: 6/24/2025
Downloads: 18 weekly / 536 monthly
Latest Version: 1.0.4
Author: minproducer

Documentation

n8n-nodes-ytube-transcript-wlang

npm version
License: MIT
n8n
Build

🔧 A powerful n8n custom node to extract and parse YouTube subtitles using yt-dlp, with multi-language support and structured JSON output.


🇻🇳 Mô tả

Node tùy chỉnh cho n8n, giúp trích xuất phụ đề video YouTube bằng công cụ yt-dlp. Hỗ trợ lựa chọn ngôn ngữ phụ đề (ví dụ: vi, en, ja, ...), xác thực bằng cookie, và chuyển phụ đề định dạng .vtt sang JSON có cấu trúc, sẵn sàng để xử lý hoặc lưu trữ.


✨ Tính năng

  • 📼 Nhận cả URL YouTube và video ID
  • 🌐 Lựa chọn ngôn ngữ phụ đề (lang: vi, en, ja,...)
  • 🔐 Hỗ trợ xác thực bằng cookie (dạng chuỗi hoặc file .txt)
  • 📄 Phân tích .vtt thành JSON chi tiết (text, start, duration)
  • 🧹 Tự động dọn dẹp file tạm sau xử lý

📦 Cài đặt

1. Cài qua npm

npm install @minproducer/n8n-nodes-ytube-transcript-wlang

2. Đặt vào thư mục custom node:

~/.n8n/nodes/

3. Hoặc mount vào Docker:

volumes:
  - ./nodes:/home/node/.n8n/nodes

🧪 Ví dụ input

{
	"videoId": "5rJbGqNyPn4",
	"lang": "vi"
}

📤 Ví dụ output

{
	"youtubeId": "5rJbGqNyPn4",
	"transcript": [
		{
			"text": "Xin chào các bạn",
			"start": 0,
			"duration": 2.5
		}
	],
	"metadata": {
		"title": "Mỹ phát ‘cảnh báo thép’...",
		"duration": 499,
		"uploader": "VIETNAM NEWS AGENCY MEDIA...",
		"uploadDate": "20250622",
		"view_count": 15000,
		"description": "..."
	}
}

🧪 Kiểm thử (Testing)

Tool test đi kèm tại tools/test-runner.js:

Chạy test toàn bộ:

npm run test

Test 1 video cụ thể:

node tools/test-runner.js --url "https://www.youtube.com/watch?v=5rJbGqNyPn4" --lang vi --format both --savefile

Test hàng loạt:

node tools/test-runner.js --file tools/video-list.json --output-dir ./results --save

Tuỳ chọn khác:

Flag Mô tả
--video / --url Chỉ định video
--lang Ngôn ngữ phụ đề (vi, en, ja)
--prefer-manual Ưu tiên phụ đề thủ công
--format Kết quả: structured, plainText, both
--save / --savefile Lưu kết quả vào file
--output-dir Thư mục lưu kết quả
--debug Bật lỗi chi tiết

📁 File kết quả sẽ được lưu trong test-results/ hoặc thư mục chỉ định.


🇬🇧 English

Custom node for n8n to extract YouTube subtitles via yt-dlp, with support for subtitle language selection (vi, en, ja, etc.), cookie authentication, and full .vtt parsing into structured JSON.


✨ Features

  • 📼 Accepts both YouTube URL and video ID
  • 🌍 Select subtitle language (lang: vi, en, ja,...)
  • 🔐 Supports cookie-based authentication (string or file)
  • 📄 Parses .vtt subtitle files into structured JSON (text, start, duration)
  • 🧹 Auto-cleans temp files after use

📦 Installation

npm install @minproducer/n8n-nodes-ytube-transcript-wlang

Place inside custom node folder:

~/.n8n/nodes/

Or mount in Docker:

volumes:
  - ./nodes:/home/node/.n8n/nodes

🧪 Testing Instructions

Test runner included at tools/test-runner.js.

Run all test cases:

npm run test

Test a specific video:

node tools/test-runner.js --url "https://www.youtube.com/watch?v=5rJbGqNyPn4" --lang en --format both --savefile

Run batch test from file:

node tools/test-runner.js --file tools/video-list.json --save

📝 License

MIT © minproducer

Discussion