Tải video từ Threads bằng yt-dlp
Hướng dẫn cài đặt từ đầu trên Ubuntu/Debian và tải video từ một bài đăng Threads công khai.
Hướng dẫn cài đặt từ đầu trên Ubuntu/Debian và tải video từ một bài đăng Threads công khai.
Công cụ sử dụng:
- yt-dlp
yt-dlp-threads— plugin hỗ trợ Threads- Python 3 +
pip+venvChỉ tải nội dung mà bạn có quyền sử dụng hoặc được phép tải. Plugin này chỉ hỗ trợ các bài đăng Threads có thể xem công khai.
1. Kiểm tra Python
Mở Terminal:
python3 --version
yt-dlp hiện hỗ trợ Python 3.10 trở lên.
Nếu máy chưa có Python hoặc phiên bản quá cũ:
sudo apt update
sudo apt install python3 python3-pip python3-venv
Kiểm tra:
python3 --version
python3 -m pip --version
2. Tạo Python virtual environment
Trên Ubuntu/Debian, không nên cài package Python trực tiếp vào Python hệ thống vì có thể gặp lỗi:
error: externally-managed-environment
Tạo một virtual environment riêng:
python3 -m venv ~/threads-downloader
Kích hoạt:
source ~/threads-downloader/bin/activate
Sau khi kích hoạt, Terminal sẽ có dạng tương tự:
(threads-downloader) user@computer:~$
Kiểm tra:
python --version
pip --version
3. Cập nhật pip
python -m pip install --upgrade pip
4. Cài yt-dlp
pip install -U yt-dlp
Kiểm tra:
yt-dlp --version
yt-dlp là command-line video downloader hỗ trợ nhiều website.
5. Cài plugin hỗ trợ Threads
yt-dlp hiện không có Threads extractor tích hợp sẵn. yt-dlp-threads là plugin cộng đồng bổ sung extractor cho threads.com và threads.net.
Cài plugin:
pip install -U "git+https://github.com/tribixbite/yt-dlp-threads"
Kiểm tra plugin:
yt-dlp --verbose "https://www.threads.com/@someone/post/ABC123"
Trong output tìm dòng:
[debug] Extractor Plugins: ThreadsIE
Nếu thấy ThreadsIE, plugin đã được load thành công.
6. Tải video từ Threads
Copy URL bài đăng Threads.
Ví dụ:
https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V
Chạy:
yt-dlp "https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V"
Nếu bài đăng có video và có thể truy cập công khai, yt-dlp sẽ tải video về thư mục hiện tại.
Kiểm tra file:
ls
7. Chọn chất lượng video
Trước tiên có thể xem các format mà Threads cung cấp:
yt-dlp -F "https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V"
Sau đó chọn format mong muốn.
Ví dụ:
yt-dlp -f "FORMAT_ID" "https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V"
Plugin hỗ trợ lấy các progressive/muxed MP4 mà Threads cung cấp và có thể xử lý cả post chứa nhiều video.
8. Lưu video vào thư mục riêng
Tạo thư mục:
mkdir -p ~/Videos/Threads
Tải video vào đó:
yt-dlp \
-o "$HOME/Videos/Threads/%(uploader)s_%(id)s.%(ext)s" \
"https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V"
File sẽ có dạng:
~/Videos/Threads/lee_zi_iyang_DdGzJ22ks3V.mp4
9. Tải nhiều video
Tạo file:
nano urls.txt
Mỗi URL đặt trên một dòng:
https://www.threads.com/@user1/post/xxxxx
https://www.threads.com/@user2/post/yyyyy
https://www.threads.com/@user3/post/zzzzz
Lưu file rồi chạy:
yt-dlp -a urls.txt
Hoặc lưu tất cả vào thư mục Threads:
yt-dlp \
-a urls.txt \
-o "$HOME/Videos/Threads/%(uploader)s_%(id)s.%(ext)s"
10. Nếu muốn xem thông tin debug
Khi tải bị lỗi:
yt-dlp --verbose "THREADS_URL"
Ví dụ:
yt-dlp --verbose \
"https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V"
Nếu plugin được load, output sẽ có:
[debug] Extractor Plugins: ThreadsIE
11. Những trường hợp plugin không tải được
Plugin Threads hoạt động bằng cách lấy dữ liệu server-rendered mà Threads cung cấp cho crawler, sau đó trích xuất URL CDN của video từ dữ liệu nhúng. Vì vậy, nó phụ thuộc vào cách Threads hiện tại render trang và có thể ngừng hoạt động nếu Threads thay đổi cấu trúc dữ liệu.
Ngoài ra, plugin hiện chỉ hỗ trợ các post có thể xem công khai và không có cookie/authentication support.
Nếu gặp:
Unsupported URL
hoặc:
No video found
hãy thử cập nhật cả yt-dlp và plugin:
pip install -U yt-dlp
pip install -U "git+https://github.com/tribixbite/yt-dlp-threads"
Sau đó thử lại:
yt-dlp "THREADS_URL"
12. Cài đặt nhanh — copy/paste
Nếu máy đã có Python 3:
sudo apt update
sudo apt install python3 python3-pip python3-venv
python3 -m venv ~/threads-downloader
source ~/threads-downloader/bin/activate
python -m pip install --upgrade pip
pip install -U yt-dlp
pip install -U "git+https://github.com/tribixbite/yt-dlp-threads"
Sau đó:
yt-dlp "https://www.threads.com/@lee_zi_iyang/post/DdGzJ22ks3V"
13. Mỗi lần mở Terminal lại
Virtual environment không tự kích hoạt lại. Nếu đã đóng Terminal, chạy:
source ~/threads-downloader/bin/activate
Rồi:
yt-dlp "THREADS_URL"
14. Cấu trúc hoạt động
Sau khi cài xong, luồng xử lý là:
Threads URL
│
▼
yt-dlp
│
▼
yt-dlp-threads
│
▼
Threads public post
│
▼
CDN video URL
│
▼
MP4 file
yt-dlp-threads là plugin public trên GitHub và repository hiện ghi license là Unlicense.