Obter uma chave de sessão do pyLast 5.5 através de um proxy
Configure a rota do objeto network antes de o pyLast fazer os pedidos de token e de chave de sessão.
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.