2014-01-11 10 views
1

EDIT: Мне удалось сделать работу Twitter с помощью virtualenv. Тем не менее, я все равно хотел бы решить эту проблему.Tweepy и Twitter не могут работать вместе

Я установил и использовал Tweepy успешно. Однако, когда я пытаюсь использовать только Twitter API, я получаю следующую ошибку

AttributeError: 'module' object has no attribute 'oauth' 

кода я использую из Горнорудных социальной сети, 2-е издания:

import twitter 

def oauth_login(): 
    # XXX: Go to http://twitter.com/apps/new to create an app and get values 
    # for these credentials that you'll need to provide in place of these 
    # empty string values that are defined as placeholders. 
    # See https://dev.twitter.com/docs/auth/oauth for more information 
    # on Twitter's OAuth implementation. 

    CONSUMER_KEY = '' 
    CONSUMER_SECRET = '' 
    OAUTH_TOKEN = '' 
    OAUTH_TOKEN_SECRET = '' 

    auth = twitter.oauth.OAuth(OAUTH_TOKEN, OAUTH_TOKEN_SECRET, 
           CONSUMER_KEY, CONSUMER_SECRET) 

    twitter_api = twitter.Twitter(auth=auth) 
    return twitter_api 

И отображается ошибка после следующих звонков:

У меня установлена ​​oauth, и я не могу понять, что происходит. Мне нужно установить Tweepy, так как я уже написал огромный кусок кода, который работает с Tweepy, и я предполагаю, что проблема возникает из-за установки Tweepy.

Edit: код в книге используется https://github.com/sixohsix/twitter

+0

Пожалуйста, добавьте пример кода, который делает AttributeError появляться. Как установить Tweepy? –

+1

добавил код (конечно, у фактического кода есть все ключи) – Anastasia

+0

Является ли ваша проблема в том, что вам (нужно) установить python-twitter и Tweepy, и только с установленными ошибками происходит ошибка? Просто чтобы я понял вашу проблему! –

ответ

0

В последней версии Tweepy, OAuth выполняется путем создания нового экземпляра OAuthHandler - нет OAuth класса. Кроме того, OAuthHandler находится в пакете auth, а не в пакете oauth. Наконец, все четыре ключа аутентификации не передаются конструктору - ключ токена доступа и секрет ключа доступа устанавливаются с использованием метода set_access_token.

Ваш код должен выглядеть следующим образом:

auth = tweepy.auth.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET) 
auth.set_access_token(OAUTH_TOKEN, OAUTH_TOKEN_SECRET) 
Смежные вопросы