2013-12-08 75 views
1

随着TKinter作为GUI的影响,与Soundclouds SDK for Python交流。现在我想为每个用户生成一个访问令牌,以便我可以访问更多的API端点。获取Soundcloud桌面应用程序的访问令牌?

我已经在Soundclouds Developer门户中创建了一个应用程序,并带有一个指向我的回调的链接。

没有任何对应于为桌面应用程序生成访问令牌。仅适用于服务器端应用程序。我想下面这段代码:

import soundcloud 

# create client object with app credentials 
client = soundcloud.Client(client_id='YOUR_CLIENT_ID', 
          client_secret='YOUR_CLIENT_SECRET', 
          redirect_uri='REDIRECT_URL') 

# redirect user to authorize URL 
redirect client.authorize_url() 

我已经把我的钥匙,并REDIRECT_URI作为我的web服务器的回调。当我从终端运行我的Python文件,我得到这个:

File "token.py", line 9 
    redirect client.authorize_url() 
       ^
SyntaxError: invalid syntax 

使用Python 2.7.5+

是什么原因造成的?我想让我的访问令牌生成并在稍后打印。

回答

2

解决方案可能是我需要创建一个Web浏览器窗口的实例,让用户使用Soundcloud connect接受该应用程序。我抓取网址,并在网址中找出“代码”。将代码与访问令牌交换并将其存储在文本文件中。以便我可以在以后抓住它。

0

尝试:

redirect(client.authorize_url()) 
1

获得访问令牌的一个简单方法通过用户凭据流动,这交换你的用户名和密码的访问令牌是通过先验证:

client = soundcloud.Client(client_id = 'CLIENT_ID', 
          client_secret = 'CLIENT_SECRET', 
          username = 'USERNAME', 
          password = 'PASSWORD') 
print client.access_token 
相关问题