【问题标题】:Authentication With Imgur API使用 Imgur API 进行身份验证
【发布时间】:2017-01-21 04:50:50
【问题描述】:

所以我正在编写一个简单的脚本,可以自动从 Imgur 下载图像。我遇到了 Imgur API,但正在努力让它工作。我注册了一个应用程序,但不知道如何使用它来获取有关图像或相册的信息。我不希望能够以用户或类似的身份登录 - 只需提供专辑或单个图像的 URL 并能够下载它。

我已经读过,如果我想这样做,那么我不需要使用 oauth 的东西,我应该能够使用客户端 ID。

https://www.reddit.com/r/learnprogramming/comments/2uzxfv/how_do_i_get_fully_authenticated_to_use_imgurs_api/

我正在编写的脚本使用 Python,但只是为了测试 API,我在浏览器中输入了 URL。如果我转到以下网址:

https://api.imgur.com/3/album/qTt8G?client_id=MY_CLIENT_ID

然后我收到以下响应:

{"data":{"error":"身份验证 需要","re​​quest":"/3/album/qTt8G","method":"GET"},"success":false,"status":401}

完整的专辑网址是https://imgur.com/a/qTt8G 我已经尝试通读 API 文档,但我坚持这一点。

有用的信息:

https://api.imgur.com/oauth2

https://api.imgur.com/endpoints/album

【问题讨论】:

    标签: python api imgur


    【解决方案1】:

    最后,我只是使用 Github 上提供的 Imgur API 帮助程序来完成所有工作。只需提供客户端 ID 和密码即可。

    https://github.com/Imgur/imgurpython

    【讨论】:

    • Python 库不再受支持 :-(
    【解决方案2】:

    您必须在 GET 请求的标头中提供客户端 ID。您正在使用查询参数发送它。 HTTP Headers vs query parameters

    您可以为此使用Postman。 在 Python 代码中,可以使用requests 库:

    import requests
    
    url = "https://api.imgur.com/3/album/{{albumHash}}"
    
    headers = {'Authorization': 'Client-ID {{clientId}}'}
    
    response = requests.request("GET", url, headers=headers)
    
    print(response.text)
    

    查看 imgur api docs 了解更多信息。

    【讨论】:

      猜你喜欢
      • 2016-08-30
      • 1970-01-01
      • 2016-10-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-17
      相关资源
      最近更新 更多