2013-08-19 3 views
1

Я использую twython twitter API.Публикация ретвитов через twython дает 401, тогда как я могу легко получить доступ к временной шкале

Я получения oauth_token и секрет следующим образом -

twitter = Twython(
     settings.TWITTER_KEY, 
     settings.TWITTER_SECRET, 
     ) 
    tw_callback_url = request.build_absolute_uri(reverse('save_twitter_token')) 
    twitter_auth = twitter.get_authentication_tokens(callback_url=tw_callback_url) 
    request.session['twitter_auth'] = twitter_auth 

, а затем сохранить его после подписания его oauth_verifier следующим образом -

oauth_verifier = request.GET['oauth_verifier'] 
temp_o_token_secret = request.session['twitter_auth']['oauth_token_secret'] 
temp_o_token = request.session['twitter_auth']['oauth_token'] 
twitter = Twython(settings.TWITTER_KEY, settings.TWITTER_SECRET, 
       temp_o_token, temp_o_token_secret) 
final_step = twitter.get_authorized_tokens(oauth_verifier) 
final_oauth_token = final_step['oauth_token'] 
final_oauth_token_secret = final_step['oauth_token_secret'] 

После того, как это делается, когда я делаю -

twitter = Twython(settings.TWITTER_KEY, 
        settings.TWITTER_SECRET, 
        acct_inst.oauth_token, 
        acct_inst.oauth_token_secret) 
try: 
    user_timeline = twitter.get_home_timeline() 
except TwythonError as e: 
    print user_timeline 

, и я получаю желаемый результат.

Но когда я -

twitter = Twython(settings.TWITTER_KEY, 
        settings.TWITTER_SECRET, 
        ACCOUNT.oauth_token, 
        ACCOUNT.oauth_token_secret) 
res = twitter.retweet(id=twitter_id) 

где twitter_id является status_id из твита.

Я получаю 401 несанкционированную ошибку - *** TwythonAuthError: Twitter API returned a 401 (Unauthorized), An error occurred processing your request.

Любая идея, что я не хватает?

ответ

2

Постарайтесь использовать id_str от статуса вместо id

 Смежные вопросы

  • Нет связанных вопросов^_^