Sto usando Tweepy per OAuth e le chiamate API di Twitter Per un sacco di motivi, sto passando a urllib
e fare richieste HTTP direttamente.
Sembra avere due opzioni:
- Posso fare oAuth direttamente su HTTP, ma le risorse esistenti sembrano dire "non disturbare, basta usare una libreria" o non coprono metà del processo.
- Posso continuare a utilizzare Tweepy per ottenere una chiave / segretocoppia, ma da lì non sono ancora chiaro su come utilizzare quella coppia per autenticare le mie domande. In particolare, cosa devo fare prima "https://api.twitter.com/1/statuses/home_timeline.json" per autenticarsi, supponendo che abbia già completato il processo OAuth e abbia una chiave / segreto per l'utente che voglio.
risposte:
2 per risposta № 1Perché non usi una libreria oauth più generica (come oauth2), invece di buttare fuori completamente l'idea della libreria di autenticazione oauth?
https://github.com/simplegeo/python-oauth2
Firmare una richiesta per OAuth significa siaimplementando la funzione di firma per ogni richiesta o utilizzando una libreria esistente e creando firme oauth è piuttosto complicato e soggetto a rotture. Come qualcuno che ha supportato le API basate su OAuth per un paio di anni, ti incoraggio fortemente a utilizzare una libreria.
La libreria oauth2 ha un esempio per ottenere un token / segreto per Twitter.
Una volta ottenuto il token e il segreto, la libreria oauth è semplice come:
consumer = oauth.Consumer(consumer_key, consumer_secret)
token = oauth.Token(token,secret)
client = oauth.Client(consumer,token)
response = make_request(client,"https://api.twitter.com/1/statuses/home_timeline.json")