2016-09-11 8 views
0

oauthライブラリを使用してPythonでtwitter apiを実行しています。私は以下のコードを含んでいます。 "twtest.py"というコードを実行すると、 'module'オブジェクトに 'OAuthConsumer'という属性がないというエラーが表示されます。PythonでOauthライブラリを使用する

1.twtest.py

import urllib 
    from twurl import augment 

    print '* Calling Twitter...' 
    url = augment('https://api.twitter.com/1.1/statuses/user_timeline.json', 
      {'screen_name': 'saurabhpathak20', 'count': '2'}) 
    print url 
    connection = urllib.urlopen(url) 
    data = connection.read() 
    print data 
    headers = connection.info().dict 
    print headers 

2.twurl.py

import urllib 
import oauth 
import hidden 

def augment(url, parameters) : 
    secrets = hidden.oauth() 
    consumer = oauth.OAuthConsumer(secrets['consumer_key'], secrets['consumer_secret']) 
    token = oauth.OAuthToken(secrets['token_key'],secrets['token_secret']) 

    oauth_request = oauth.OAuthRequest.from_consumer_and_token(consumer, 
     token=token, http_method='GET', http_url=url, parameters=parameters) 
    oauth_request.sign_request(oauth.OAuthSignatureMethod_HMAC_SHA1(), consumer, token) 
    return oauth_request.to_url() 


def test_me() : 
    print '* Calling Twitter...' 
    url = augment('https://api.twitter.com/1.1/statuses/user_timeline.json', 
     {'screen_name': 'saurabhpathak20', 'count': '2'}) 
    print url 
    connection = urllib.urlopen(url) 
    data = connection.read() 
    print data 
    headers = connection.info().dict 
    print headers 

3.hidden.py

def oauth() : 
    return { "consumer_key" : "pj......U8fFRyjV", 
     "consumer_secret" : "zty3njhO4IRl........ELh1YC1j1rX", 
     "token_key" : "515167047-xaRfSm7.......wBBOrjNd61anI55D", 
     "token_secret" : " y7ZCBDf6d..........x1eJV8mHRnL8hh" } 

親切に私がで間違っているかを理解するのに役立ちますコード。おかげさまで

答えて

0

あなたがimport oauth

>>> from oauth import oauth 
>>> oauth.OAuthConsumer 
<class 'oauth.oauth.OAuthConsumer'> 
+0

感謝するのではなく、oauthからoauthをインポートする必要があるが、今回は私が新しいエラーを取得しています。このリンクをクリックすると、エラーのスクリーンショットが表示されますhttp://tinypic.com/r/ny8gt0/9 – Sourav

+0

これは実行エラーです。まったく違うので、ここで答えることは特定の質問に対しては悪いことです。また、そのHTTPのスタッフのフィールドで私はあなたを助けることはできません。最初のエラーを修正して新しい質問をしてください。スクリーンショットを投稿しないでください。あなたの質問にはエラーがテキストとして表示されます。 –

関連する問題