toMedia
平台专项

Instagram

Instagram 视频、Reels 与音频下载指南

📸 Instagram 下载指南

Instagram 几乎所有内容都需要登录才能访问。请务必先配置 Cookies 认证。

前置准备:Cookies 认证

# 推荐:直接使用浏览器 Cookies
yt-dlp --cookies-from-browser chrome "INSTAGRAM_URL"

# 或导出 cookies 文件后使用
yt-dlp --cookies instagram-cookies.txt "INSTAGRAM_URL"
import yt_dlp

ydl_opts = {
    'cookiesfrombrowser': ('chrome',),
}

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download(["INSTAGRAM_URL"])

视频与 Reels 下载

# 下载 Reels 视频
yt-dlp --cookies-from-browser chrome \
  "https://www.instagram.com/reel/Cxxxxxxxx/"

# 下载帖子中的视频
yt-dlp --cookies-from-browser chrome \
  "https://www.instagram.com/p/CxxxxxxYYYY/"

# 指定画质
yt-dlp --cookies-from-browser chrome -f "best" \
  "https://www.instagram.com/reel/CxxxxxxYYYY/"
import yt_dlp

ydl_opts = {
    'cookiesfrombrowser': ('chrome',),
    'format': 'best',
}

urls = [
    "https://www.instagram.com/reel/CxxxxxxYYYY/",
    "https://www.instagram.com/p/CxxxxxxYYYY/",
]

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download(urls)

提取音频

# 从 Reels 提取音频
yt-dlp --cookies-from-browser chrome \
  -x --audio-format mp3 \
  "https://www.instagram.com/reel/CxxxxxxYYYY/"

# 最佳音质
yt-dlp --cookies-from-browser chrome \
  -x --audio-quality 0 \
  "https://www.instagram.com/reel/CxxxxxxYYYY/"
import yt_dlp

ydl_opts = {
    'cookiesfrombrowser': ('chrome',),
    'extract_audio': True,
    'postprocessors': [{
        'key': 'FFmpegExtractAudio',
        'preferredcodec': 'mp3',
        'preferredquality': '0',
    }],
}

with yt_dlp.YoutubeDL(ydl_opts) as ydl:
    ydl.download(["https://www.instagram.com/reel/CxxxxxxYYYY/"])

Stories 下载

# 下载某用户的 Stories(需要 Cookies 且你能看到该 Story)
yt-dlp --cookies-from-browser chrome \
  "https://www.instagram.com/stories/username/"

# 下载特定 Story
yt-dlp --cookies-from-browser chrome \
  "https://www.instagram.com/stories/username/1234567890/"

图文帖子(图片下载)

yt-dlp 是视频下载工具,对于 Instagram 的纯图片帖子(图文 Feed),yt-dlp 有限支持。 它可以提取帖子的元数据和缩略图,但无法直接下载原图

yt-dlp 能做的

# 写入缩略图(帖子封面图)
yt-dlp --cookies-from-browser chrome \
  --write-thumbnail --skip-download \
  "https://www.instagram.com/p/IMAGE_POST_ID/"

推荐替代工具

对于 Instagram 图片下载,建议使用专门的图片下载工具:

工具说明命令示例
gallery-dl专业图片下载器,完整支持 IG 图文gallery-dl "https://www.instagram.com/p/xxx/"
instaloaderIG 专用工具,支持批量下载instaloader -- -post_url
# gallery-dl 安装与使用示例
pip install gallery-dl

# 下载帖子(图片+视频都支持)
gallery-dl "https://www.instagram.com/p/CxxxxxxYYYY/"

# 下载用户所有帖子
gallery-dl "https://www.instagram.com/username/"

批量下载

# 将多个链接放入文件
echo "https://www.instagram.com/reel/AAA/" > ig-urls.txt
echo "https://www.instagram.com/reel/BBB/" >> ig-urls.txt
echo "https://www.instagram.com/p/CCC/" >> ig-urls.txt

# 批量下载
yt-dlp --cookies-from-browser chrome -a ig-urls.txt

# 带统一命名
yt-dlp --cookies-from-browser chrome -a ig-urls.txt \
  -o "%(uploader)s/%(title).50s - %(id)s.%(ext)s"

常见问题

HTTP Error 401Login Required

Instagram 要求几乎所有请求都携带认证信息:

# 确保使用 Cookies
yt-dlp --cookies-from-browser chrome "URL"

# 如果浏览器 Cookies 不生效,手动导出 cookies.txt
# 使用浏览器扩展 "Get cookies.txt" 导出后:
yt-dlp --cookies cookies.txt "URL"

HTTP Error 429: Too Many Requests

Instagram 有严格的速率限制:

# 添加下载间隔
yt-dlp --cookies-from-browser chrome \
  --sleep-interval 5 --max-sleep-interval 15 \
  -a ig-urls.txt

轮播帖(多图/视频混合)

对于轮播帖(carousel),yt-dlp 会尝试下载其中的视频部分,但图片部分不会被下载。如需完整下载轮播帖的所有内容,建议使用 gallery-dl。

On this page