Skip to content

phohoccode/playlist-extractor-youtube

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

YouTube Playlist Extractor

Ứng dụng web giúp trích xuất và quản lý các video từ danh sách phát YouTube một cách dễ dàng.

Giới thiệu

YouTube Playlist Extractor là một công cụ trực tuyến cho phép bạn:

  • Nhập ID danh sách phát YouTube
  • Lấy thông tin chi tiết về tất cả video trong danh sách
  • Sao chép liên kết nhúng video
  • Xuất dữ liệu dưới dạng JSON
  • Quản lý lịch sử tìm kiếm

Chức năng chính

1. Nhập ID Danh sách Phát

  • Nhập ID danh sách phát YouTube vào trường input
  • Hỗ trợ sao chép trực tiếp từ URL YouTube
  • Ví dụ ID: PL_-VfJajZj0Uo72G_6tSY4NRLpmffeXSA

2. Lấy Dữ liệu Video

Nút "Lấy dữ liệu" sẽ:

  • Kết nối tới YouTube API v3
  • Tải xuống thông tin tất cả video trong danh sách phát
  • Hiển thị danh sách video với:
    • Ảnh thumbnails
    • Tiêu đề video
    • Thời lượng video
    • Ngày xuất bản

3. Sao chép Liên kết

  • Sao chép tất cả liên kết: Sao chép tất cả URL nhúng (embed) của các video vào clipboard, mỗi liên kết trên một dòng
  • Sao chép liên kết riêng lẻ: Nhấp vào bất kỳ video nào để sao chép liên kết nhúng của video đó

4. Xuất dữ liệu JSON

Nút "Sao chép JSON" xuất tất cả thông tin video dưới dạng JSON gồm:

  • ID video
  • Tiêu đề
  • Ảnh thumbnail
  • Ngày xuất bản
  • Thời lượng
  • URL nhúng

5. Làm mới Dữ liệu

Nút "Làm mới" sẽ:

  • Tái tải danh sách phát hiện tại
  • Giữ lại ID danh sách phát đã nhập
  • Cập nhật danh sách video mới nhất

6. Xóa Dữ liệu

Nút "Xóa dữ liệu" sẽ:

  • Xóa ID danh sách phát
  • Ẩn danh sách video
  • Ẩn JSON box
  • Xóa dữ liệu tạm thời

7. Hiển thị JSON

Nút "Hiển thị JSON" cho phép:

  • Xem/ẩn dữ liệu JSON của tất cả video
  • Hiển thị dữ liệu được định dạng rõ ràng

8. Lịch sử Tìm kiếm

  • Tự động lưu các ID danh sách phát đã nhập trước đó
  • Nhấp vào bất kỳ mục lịch sử nào để tải lại danh sách phát đó
  • Nút "Xóa lịch sử" để xóa tất cả mục lịch sử

Yêu cầu Kỹ thuật

1. YouTube API Key

Bạn cần có một API Key từ Google Cloud:

  1. Truy cập Google Cloud Console
  2. Tạo một project mới
  3. Kích hoạt YouTube Data API v3
  4. Tạo API Key
  5. Thay thế YOUR_YOUTUBE_API_KEY_HERE trong file index.html bằng API Key của bạn

2. Trình duyệt

  • Chrome, Firefox, Edge, Safari phiên bản gần đây
  • Hỗ trợ ES6+ JavaScript
  • LocalStorage được bật

3. Kết nối Internet

  • Cần kết nối internet để truy cập YouTube API

Cài đặt và Sử dụng

  1. Tải project

    git clone <repository-url>
    cd PlaylistExtractorYoutube
  2. Cấu hình API Key

    • Mở file index.html
    • Tìm dòng: const apiKey = "YOUR_YOUTUBE_API_KEY_HERE";
    • Thay thế bằng API Key của bạn
  3. Chạy ứng dụng

    • Mở file index.html trực tiếp trong trình duyệt
    • Hoặc sử dụng một local server (ví dụ: Live Server trong VS Code)

Hướng dẫn Sử dụng

  1. Sao chép ID danh sách phát YouTube từ URL:

    • URL: https://www.youtube.com/playlist?list=PL_-VfJajZj0Uo72G_6tSY4NRLpmffeXSA
    • ID: PL_-VfJajZj0Uo72G_6tSY4NRLpmffeXSA
  2. Dán ID vào trường input

  3. Nhấp nút "Lấy dữ liệu"

  4. Chờ dữ liệu được tải (có thể mất vài giây tùy theo số lượng video)

  5. Khi hoàn thành:

    • Danh sách video sẽ hiển thị
    • Bạn có thể sao chép liên kết hoặc JSON

Lưu trữ Dữ liệu

  • Lịch sử: Được lưu trong LocalStorage của trình duyệt
  • Dữ liệu Video: Lưu tạm thời trong bộ nhớ, bị xóa khi làm mới hoặc tắt trang

Thông báo

Ứng dụng hiển thị các thông báo (toast) để thông báo cho người dùng:

  • Nhập ID danh sách phát
  • Hoàn thành tải dữ liệu
  • Sao chép thành công
  • Lỗi (nếu có)

Tính năng Bổ sung

  • ✅ Hỗ trợ tiếng Việt
  • ✅ Giao diện Bootstrap 5
  • ✅ Icon Font Awesome 6
  • ✅ Responsive design
  • ✅ Toast thông báo
  • ✅ LocalStorage cho lịch sử

Ghi chú

  • Ứng dụng hỗ trợ tải tối đa 50 video trên một lần request từ YouTube API
  • Nếu danh sách phát có nhiều hơn 50 video, ứng dụng sẽ tự động tải trang tiếp theo
  • Dữ liệu được mã hóa trong JSON với định dạng rõ ràng

Giấy phép

MIT License

Hỗ trợ

Nếu bạn gặp vấn đề hoặc có đề xuất, vui lòng tạo issue mới.

Releases

No releases published

Packages

 
 
 

Contributors

Languages