Establecer credenciales de Spotify usando Spotipy

Estoy probando spotipy con python 2.7.10 preinstalado en mi mac 10.10, específicamente [add_a_saved_track.py] [1] Aquí está el código copiado de github:

# Add tracks to 'Your Collection' of saved tracks

import pprint
import sys

import spotipy
import spotipy.util as util

scope = 'user-library-modify'

if len(sys.argv) > 2:
    username = sys.argv[1]
    tids = sys.argv[2:]
else:
    print("Usage: %s username track-id ..." % (sys.argv[0],))
    sys.exit()

token = util.prompt_for_user_token(username, scope)

if token:
    sp = spotipy.Spotify(auth=token)
    sp.trace = False
    results = sp.current_user_saved_tracks_add(tracks=tids)
    pprint.pprint(results)
else:
    print("Can't get token for", username)

Registré la aplicación con developer.spotify.com/my-applications y recibí client_id y client_secret. No estoy muy claro acerca de la selección de redirect_uri, así que configuré eso en 'https://play.spotify.com/collection/songs'

Al ejecutar esto desde la terminal, aparece un error que dice:

You need to set your Spotify API credentials. You can do this by
setting environment variables like so:
export SPOTIPY_CLIENT_ID='your-spotify-client-id'
export SPOTIPY_CLIENT_SECRET='your-spotify-client-secret'
export SPOTIPY_REDIRECT_URI='your-app-redirect-url'

Lo puse en mi código con el id, el secreto y la url como cadenas, solo siguiendo las importaciones pero por encima del método util.prompt_for_user_token.

Eso causó un rastreo:

File "add-track.py", line 8
export SPOTIPY_CLIENT_ID='4f...6'
                       ^
SyntaxError: invalid syntax

Noté que Text Wrangler no reconoce 'exportar' como una palabra especial. Y busqué 'exportar' en docs.python.org y no encontré nada útil. ¿Qué es la exportación? ¿Cómo lo estoy usando incorrectamente?

Luego intenté pasar el client_id, client_secret y redirect_uri como argumentos en el método util.prompt_for_user_token así:

util.prompt_for_user_token(username,scope,client_id='4f...6',client_secret='xxx...123',redirect_uri='https://play.spotify.com/collection/songs')

Cuando intenté eso, esto es lo que sucede en la terminal:

User authentication requires interaction with your
        web browser. Once you enter your credentials and
        give authorization, you will be redirected to
        a url.  Paste that url you were directed to to
        complete the authorization.


Opening https://accounts.spotify.com/authorize?scope=user-library-modify&redirect_uri=https%3A%2F%2Fplay.spotify.com%2Fcollection%2Fsongs&response_type=code&client_id=4f...6 in your browser


Enter the URL you were redirected to: 

Entréhttps://play.spotify.com/collection/songs y luego obtuve este rastreo:

Traceback (most recent call last):
File "add-track.py", line 21, in <module>
token = util.prompt_for_user_token(username, scope, client_id='4f...6', client_secret='xxx...123', redirect_uri='https://play.spotify.com/collection/songs')
File "/Library/Python/2.7/site-packages/spotipy/util.py", line 86, in prompt_for_user_token
token_info = sp_oauth.get_access_token(code)
File "/Library/Python/2.7/site-packages/spotipy/oauth2.py", line 210, in get_access_token
raise SpotifyOauthError(response.reason)
spotipy.oauth2.SpotifyOauthError: Bad Request

Parece que me falta algo, quizás deba importarse otra parte de Spotipy, o algún otro módulo de Python. Parece que me falta la pieza que establece las credenciales del cliente. ¿Cómo puedo hacer eso? Soy bastante nuevo en esto (si eso no fuera obvio). Por favor ayuda.

ACTUALIZACIÓN: Cambié redirect_uri a localhost: 8888 / callback. Eso hace que se abra una pestaña de Firefox con un error: "no se puede conectar al servidor". (Como no tengo un servidor ejecutándose. Pensé en instalar node.js como en el tutorial de API web de Spotify, pero aún no lo he hecho). El script de Python luego me pide que copie y pegue la URL a la que fui redirigido. Aunque FF no pudo abrir una página, conseguí que esto funcionara copiando eltodo&nbsp;URL que incluye el "código = BG ..." que sigue a localhost: 8888 / callback? No estoy seguro de que esta sea una configuración ideal, pero al menos funciona.

¿Importa si configuro node.js o no?