gpt4 book ai didi

python - 将链接发布到我自己的 Pocket 帐户时,如何授权从 Python 脚本调用 Pocket API?

转载 作者:太空宇宙 更新时间:2023-11-03 16:55:41 26 4
gpt4 key购买 nike

我正在编写一个 python 脚本来添加指向我自己的 Pocket 帐户的链接。我正在按照以下步骤操作。

  1. 获取消费者 key :我有一个从 Pocket 开发者应用程序生成的消费者 key
  2. 生成请求 token :我已使用以下代码生成了请求 token

    pocket_get_request_token_url = "https://getpocket.com/v3/oauth/request"
    headers = {"Content-Type": "application/json; charset=UTF-8",
    "X-Accept": "application/json"}

    params = {"consumer_key": consumer_key,
    "redirect_uri": "pocketapp1234:authorizationFinished"}

    pocketOAuth = requests.post(pocket_get_request_token_url,
    json=params, headers=headers)

    request_token = json.loads(pocketOAuth.text)["code"]
  3. 授权请求 token :第 3 步是使用以下代码授权 token 。我不知道如何为 python 脚本运行此 block 。

    pocket_auth_request_token_url = "https://getpocket.com/auth/authorize"
    params = {"request_token": request_token,
    "redirect_uri": "pocketapp1234:authorizationFinished"}
    authResp = requests.post(pocket_auth_request_token_url, json=params)
  4. 生成访问 token :第 4 步是生成访问 token 。如果我继续使用以下代码生成访问 token ,

    pocket_get_access_token_url = "https://getpocket.com/v3/oauth/authorize"
    headers = {"Content-Type": "application/json; charset=UTF-8",
    "X-Accept": "application/json"}

    params = {"consumer_key": consumer_key,
    "code": request_token}

    accessResp = requests.post(pocket_get_access_token_url,
    json=params, headers=headers)

    access_token = json.loads(accessResp.text)["access_token"]

当我运行上面的代码块时,出现以下错误。

x-error-code : 158 x-error : User rejected code

所以我的问题是,如果我尝试使用 python 脚本添加到我的 Pocket 帐户的链接,我显然没有运行 Web 应用程序,那么我如何授权生成的请求 token 以便我可以继续生成访问 token

最佳答案

补充一下 Yue 的答案,如果您从脚本运行此重定向 URI,则它是无关紧要的。我也遇到了这个问题,并使用 input 使我的脚本具有交互性: https://gist.github.com/alexpyoung/7e241a8f3f805630f0f66a1cf0763675#file-pocket_import-L71

关于python - 将链接发布到我自己的 Pocket 帐户时,如何授权从 Python 脚本调用 Pocket API?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35438420/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com