Trình tạo lệnh yt-dlp cho Instagram
Tạo lệnh yt-dlp cho bài đăng và reels Instagram. Cookies được bật sẵn vì gần như không làm được gì mà không có nó.
Instagram cần một phiên đăng nhập
Instagram trả về rất ít nội dung cho request chưa đăng nhập, nên --cookies-from-browser thực chất là bắt buộc chứ không phải tuỳ chọn. Hãy đóng trình duyệt trước khi chạy lệnh: Chrome và Edge khoá cơ sở dữ liệu cookies khi đang mở.
Một bài carousel được coi như playlist, nên hãy đặt xử lý playlist thành toàn bộ playlist để lấy hết các mục. Stories cần phiên đăng nhập có theo dõi tài khoản đó và sẽ biến mất sau 24 giờ.
Instagram ngày càng không tin tưởng việc truy cập tự động, và một phiên tải quá nhiều quá nhanh sẽ bị đòi đăng nhập lại — dấu hiệu nhận ra là một câu lệnh hôm qua vẫn chạy mà hôm nay lại trả về trang đăng nhập. Hãy dùng một tài khoản riêng thay vì tài khoản chính, giữ cookies của nó luôn mới bằng cách đăng nhập bình thường thỉnh thoảng, và chấp nhận rằng một tài khoản dùng theo kiểu này thỉnh thoảng vẫn bị dính cờ dù câu lệnh viết cẩn thận đến mấy. Đó là cái giá của nền tảng, không phải lỗi của yt-dlp.
Bài đăng, reels và highlights đi qua cùng một extractor nhưng hiển thị khác nhau tuỳ phiên. Reels từ các tài khoản bạn theo dõi tải bình thường; reels trên trang khám phá thường từ chối một phiên chưa từng tương tác với loại nội dung đó. Highlights — các vòng tròn story ghim trên profile — mỗi cái tải về là một playlist gồm các story của nó. IGTV đã ngừng hoạt động: link cũ thỉnh thoảng vẫn dùng được, nhưng không có gì mới dùng tới nó.
Instagram giới hạn tốc độ gắt hơn bất kỳ nền tảng nào mà yt-dlp thường xuyên đối mặt. Fragment song song chỉ làm mọi thứ tệ đi, không tốt lên; mỗi lần một mục với quãng nghỉ giữa các lần chạy mới là kiểu sống sót được. Một lần chạy nhiều mục gãy giữa chừng là chuyện bình thường — file lưu lịch sử cộng với bỏ qua lỗi biến việc thử lại thành tiếp tục chứ không phải làm lại, điều này quan trọng vì đến lúc lần chạy kết thúc, link CDN của những mục đầu tiên thường đã hết hạn và chạy lại từ đầu sẽ lấy lại các trang chứ không phải media.
Những thứ không thể lấy lại: bài từ tài khoản riêng tư mà bạn không theo dõi, story đã quá 24 giờ, và bất cứ thứ gì bị xoá trước khi bạn chạy câu lệnh. Link CDN bên trong một trang vừa lấy về hết hạn nhanh, nên URL media mà một giờ trước còn chạy được có thể từ chối ngay bây giờ — hãy lấy lại trang bài đăng thay vì thử lại link cũ. Chuyện hết hạn đó cũng là lý do nên tải sớm thay vì để đó mai sau: Instagram không hứa giữ media luôn truy cập được, và nó giữ đúng lời không hứa ấy.