如何在向我自己的pocket帐户发布链接时授权Python脚本中的pocket API调用?

如何在向我自己的pocket帐户发布链接时授权Python脚本中的pocket API调用?,python,pocket,Python,Pocket,我正在编写一个python脚本,以向我自己的Pocket帐户添加链接。我正在遵循这些步骤 获取消费者密钥:我有一个从Pocket developer应用程序生成的消费者密钥 生成请求令牌:我已经生成了一个带有以下代码的请求令牌 pocket_get_request_token_url = "https://getpocket.com/v3/oauth/request" headers = {"Content-Type": "application/json; charset=UTF-8",

我正在编写一个python脚本,以向我自己的Pocket帐户添加链接。我正在遵循这些步骤

  • 获取消费者密钥:我有一个从Pocket developer应用程序生成的消费者密钥
  • 生成请求令牌:我已经生成了一个带有以下代码的请求令牌

    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是使用以下代码授权令牌。我不知道如何为python脚本运行此块

    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步是生成访问令牌。如果我继续使用下面的代码生成一个访问令牌

    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错误代码:158 x错误:用户拒绝代码


    因此,我的问题是,如果我试图使用python脚本向我的pocket帐户添加链接,我显然没有运行web应用程序,那么我如何授权生成的请求令牌,以便继续生成访问令牌?

    我试图授权pocket Developer API,并遵循了您的步骤。然而,我在第3步中尝试了一种不同的方法


    您应该使用请求令牌和重定向URI修改以下URL,然后在浏览器中打开它:

    要添加到Yue的答案中,如果您是从脚本运行此操作,则重定向URI是无关紧要的。我也遇到了这个问题,并使用
    input
    使我的脚本具有交互性: