Instagram용 yt-dlp 명령어 생성기
Instagram 게시물과 reels용 yt-dlp 명령어를 만듭니다. cookies는 기본으로 켜져 있습니다 —— 그것 없이는 거의 아무것도 되지 않기 때문입니다.
Instagram에는 세션이 필요합니다
Instagram은 로그인하지 않은 요청에 거의 아무것도 주지 않으므로 --cookies-from-browser 는 사실상 필수이며 선택 사항이 아닙니다. 명령어를 실행하기 전에 브라우저를 닫으세요. Chrome과 Edge는 실행 중에 cookies 데이터베이스를 잠급니다.
캐러셀은 재생목록으로 취급되므로 모든 항목을 받으려면 재생목록 처리를 재생목록 전체로 설정하세요. 스토리는 그 계정을 팔로우한 세션이 필요하고 24시간 뒤에 사라집니다.
Instagram은 자동 접근을 점점 더 불신합니다. 한 번에 너무 많이 너무 빨리 내려받은 세션은 다시 로그인하라는 요구를 받습니다 —— 어제 되던 명령어가 오늘 로그인 페이지를 돌려주면 그것이 징후입니다. 주 계정 대신 전용 계정을 쓰고, 가끔 평소처럼 로그인해 cookies를 신선하게 유지하며, 이렇게 쓰이는 계정은 명령어를 아무리 정성껏 짜도 때때로 표식이 남는다는 것을 받아들이세요. 그것은 플랫폼의 대가이지 yt-dlp의 버그가 아닙니다.
게시물, reels, 하이라이트는 같은 extractor를 통과하지만 세션마다 보이는 것이 다릅니다. 팔로우하는 계정의 reels는 문제없이 내려옵니다. 탐색 페이지의 reels는 그런 콘텐츠에 관여한 적 없는 세션에는 자주 거부됩니다. 하이라이트 —— 프로필에 고정된 스토리 띠 —— 는 각각 자기 스토리들의 재생목록으로 내려옵니다. IGTV는 은퇴했습니다. 오래된 링크가 아직 풀리는 때도 있지만, 새것은 아무것도 쓰지 않습니다.
Instagram은 yt-dlp가 늘 마주하는 어느 플랫폼보다 강하게 레이트 리밋을 겁니다. 동시 fragment는 상황을 낫게 하지 않고 악화합니다. 한 번에 한 항목, 실행 사이에 쉬는 간격을 두는 패턴만 살아남습니다. 여러 항목짜리 실행이 중간에 실패하는 것은 정상입니다 —— 기록 파일과 오류가 나도 계속이 있으면 재시도는 재시작이 아니라 재개가 됩니다. 이것이 중요한 이유는, 실행이 끝나기 무섭게 가장 앞선 항목들의 CDN 링크가 대개 만료되어, 통째로 다시 돌리면 미디어가 아니라 페이지를 다시 가져오게 되기 때문입니다.
되돌릴 수 없는 것들이 있습니다. 팔로우하지 않은 비공개 계정의 게시물, 24시간을 넘긴 스토리, 그리고 명령어를 실행하기 전에 이미 지워진 모든 것. 가져온 페이지 안의 CDN 링크는 빨리 만료되므로, 한 시간 전에 되던 미디어 URL이 지금은 거부될 수 있습니다 —— 오래된 링크를 재시도할 것이 아니라 게시물 페이지를 다시 가져오세요. 이 만료는 곧 내려받을 명분이기도 합니다. Instagram은 미디어를 계속 도달 가능하게 두겠다는 약속도 하지 않으면서, 만료는 지키거든요.