【问题标题】:Python requests on Instagram media link returns Not Found errorInstagram 媒体链接上的 Python 请求返回 Not Found 错误
【发布时间】:2019-08-08 14:22:39
【问题描述】:

我在 Python 中有这个函数可以从提供的 URL 中获取帖子的媒体 ID:

def get_media_id(self):
    req = requests.get('https://api.instagram.com/oembed/?url={}'.format(self.txtUrl.text()))
    media_id = req.json()['media_id']
    return media_id

当我在浏览器中打开结果 URL 时,它会返回数据,但在代码中结果是“404 未找到” 例如考虑这个链接:

https://www.instagram.com/p/B05bitzp15CE8e3Idcl4DAb8fjsfxOsSUYvkDY0/

当我把它放在 url 中时,结果是:

但是当我在这个函数中运行相同的函数时,它会返回 404 错误

【问题讨论】:

  • self.txtUrl.text()的内容是什么?
  • 我要获取其媒体ID的媒体的URL
  • 好的,但是你有没有像你描述的那样失败的例子可以在这里分享?

标签: python python-requests instagram


【解决方案1】:

我尝试运行您的代码并假设self.txtUrl.text() 您的代码没有任何问题。问题是您试图在没有访问令牌的情况下访问 私人帐户 的媒体 ID。

您能够在浏览器中打开该链接的原因是您可能已登录该帐户或正在关注该帐户。要使用您提供的方法,您需要公开 instagram 帖子,例如尝试设置txtUrl.text() = https://www.instagram.com/p/fA9uwTtkSN/。您的代码应该可以正常工作。

问题是您的 GET 请求没有任何授权令牌来访问帖子。如果您在这里有访问令牌,其他人已经写了如何获取media_id 的答案:Where do I find the Instagram media ID of a image (having access token and following the image owner)?

【讨论】:

    猜你喜欢
    • 2021-03-31
    • 1970-01-01
    • 2012-08-10
    • 1970-01-01
    • 2015-09-01
    • 1970-01-01
    • 2015-01-14
    • 1970-01-01
    • 2023-03-05
    相关资源
    最近更新 更多