Trình tạo lệnh yt-dlp cho Bilibili
Tạo lệnh yt-dlp cho Bilibili, bật sẵn giả dạng trình duyệt để tránh phần lớn lỗi 403.
Lỗi 403 và giới hạn chất lượng
Bilibili từ chối những request không giống trình duyệt, nên một câu lệnh thông thường hay trả về 403. Giả dạng trình duyệt được bật sẵn trong preset này vì đó là cách sửa hiệu quả trong phần lớn trường hợp.
1080p trở lên thường chỉ dành cho tài khoản đã đăng nhập hoặc tài khoản trả phí, nên ở đây cookies quan trọng cho cả chất lượng chứ không chỉ để truy cập. Video nhiều phần xuất hiện dưới dạng các mục của playlist.
Bilibili là nền tảng khiến một bản yt-dlp cũ gãy nhanh nhất — trang này làm lại API của mình thường hơn bất kỳ nền tảng phương Tây nào, và bản cập nhật extractor đến trong bản phát hành yt-dlp chỉ sau vài ngày kể từ mỗi thay đổi. Khi một lượt tải tháng trước vẫn chạy mà bắt đầu thất bại, hãy update trước: yt-dlp -U. Giả dạng trình duyệt (bật sẵn trong preset này) xử lý phần header-phải-như-trình-duyệt của vấn đề 403; phần còn lại thường là một phiên thiếu hoặc đã hết hạn.
Video nhiều phần — cấu trúc P1/P2/P3 quen thuộc của các bộ series — đến dưới dạng các mục playlist, nên xử lý toàn bộ playlist sẽ lấy đủ mọi phần, và số thứ tự playlist trong mẫu tên file giữ các phần đúng thứ tự. Danmaku (các bình luận chạy ngang) là một track phụ đề đối với yt-dlp: --write-subs lưu chúng thành file .ass, định dạng duy nhất mà chúng tồn tại. Nếu không muốn, đừng làm gì — chúng không được merge trừ khi bạn yêu cầu.
Các mức chất lượng tương tác — thang "dolby" và premium — chỉ tồn tại với những tài khoản đang nắm giữ chúng, và không cờ nào với tới được nếu thiếu cookies từ một tài khoản như vậy. Nội dung khoá vùng là bức tường còn lại: một số video chỉ nhìn thấy được từ đại lục Trung Quốc, và proxy đặt đúng vùng là con đường duy nhất khi việc chặn được thực thi ở tầng CDN chứ không phải ở trang. Vượt chặn vùng đôi khi hiệu quả với chặn ở cấp trang, nhưng chưa bao giờ với tầng CDN.
Bilibili phục vụ các mức chất lượng cao của nó dưới dạng DASH với audio tách riêng, nên ffmpeg merge y hệt như YouTube — bước merge đã có sẵn trong preset này. Tách chỉ-lấy-audio bằng -x hoạt động bình thường và là cách nhanh nhất để lấy riêng tiếng từ một video nhiều phần dài. Với bản phát lại live, bản phát lại trở thành VOD thường sau khi stream kết thúc, nên cứ tải nó như mọi video khác; các tuỳ chọn ghi trực tiếp trên trang này dành cho stream khi nó đang diễn ra.