You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Instagram帖子URL中获取有效的media-id

Instagram帖子URL提取media-id方法

旧版oEmbed接口取ID、URL拼接?__a=1取数的方案均已失效,以下为实测可用方案:

方案1:短码本地转ID(永久稳定,无访问限制)

Instagram帖子URL中/p/路径后的字符串为帖子短码,和media-id为固定编码映射关系,本地即可完成转换,不受接口规则变动影响:

  • 编码逻辑:短码采用自定义Base64字符集ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_编码,逐字符匹配字符集索引后按64进制转十进制,结果即为media-id
  • 示例结果:示例链接https://www.instagram.com/p/Cf4dPucLzW0/的短码为Cf4dPucLzW0,转换后得到media-id为2889327482068701201
  • 参考JS实现代码:
function shortcodeToMediaId(shortcode) {
  const charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_';
  let id = 0n;
  for (const char of shortcode) {
    id = id * 64n + BigInt(charset.indexOf(char));
  }
  return id.toString();
}
// 传入/p/后的短码即可直接得到结果

方案2:页面源码直接提取

无需计算,直接从公开的帖子页面提取字段:

  • 直接在浏览器访问帖子原始URL,不要拼接任何额外参数
  • 右键打开网页源代码,搜索关键词"media_id",匹配到的首个双引号包裹的数字串即为目标media-id
  • 注意:未登录状态下即可获取该字段,无需账号登录

提示:所有拼接特殊参数获取结构化JSON数据的旧方案目前均触发重定向,公开oEmbed接口已移除media-id返回字段,无特殊需求优先使用本地方案1,稳定性最高。

内容的提问来源于stack exchange,提问作者penguin_P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 11:21:29