O pyLast pode fazer pedidos de autenticação logo ao construir um objeto network, se forem fornecidas informações de início de sessão suficientes. Para configurar primeiro a rota, crie a network sem acionar esse fluxo de autenticação.

O exemplo seguinte usa a interface proxy-URI do pyLast 5.5 e o auxiliar público de autenticação web:

import pylast

network = pylast.LastFMNetwork(api_key=api_key, api_secret=api_secret)
network.enable_proxy('http://proxy.example.net:8080')

generator = pylast.SessionKeyGenerator(network)
authorization_url = generator.get_web_auth_url()

A aplicação fornece a sua própria API key e o seu secret. Para uma rota pública da API do Last.fm que permita intermediários não autenticados, use em enable_proxy um endpoint da lista de proxies HTTP; esses endpoints não fornecem as credenciais do fornecedor. A última chamada obtém o token de autenticação através do objeto network configurado. Peça ao utilizador que abra o URL resultante e autorize a aplicação.

Após a autorização, use o mesmo generator para obter a chave de sessão:

network.session_key = generator.get_web_auth_session_key(authorization_url)

O generator conserva o token associado a esse URL. Manter a mesma network e o mesmo generator entre estes dois passos preserva a rota configurada e o estado de autenticação pendente.

Quando já existe uma chave

Se já existir uma chave de sessão guardada, passe-a como session_key ao criar a network e, em seguida, ative o proxy antes da primeira chamada à API. O construtor não precisa de pedir outra chave. As pesquisas apenas de leitura também podem usar a network configurada sem iniciar este fluxo de autorização.

Artigos relacionados