2012-04-22 17 views
2

tweepyが実際のつぶやきを返すようにするにはどうすればいいですか?人間が判読可能な形式でつぶやきを表示する必要がありますか?私はそれがこのようなつぶやきを返すようにしたくないTweetsを読み込み可能な形式で表示する

<tweepy.models.Status object at 0x95F1ABPo> 

コード

def tweetstream(request): 
     consumer_key="" 
     consumer_secret="" 
     access_token="" 
     access_token_secret="" 
     auth=tweepy.OAuthHandler(consumer_key, consumer_secret) 
     auth.set_access_token(access_token, access_token_secret) 
     api=tweepy.API(auth) 
     statuses=Cursor(api.list_timeline, owner='', slug='').pages() 
     for status in statuses: 
      print status 
      return render_to_response('dash.html',{'statuses': statuses},context_instance=RequestContext(request)) 

答えて

1

tweepy.models.Statusは単なるクラスです。ツイートの内容にアクセスするためのフィールドがありそうです。たとえば、status.textを試してください。ステータスがAであると仮定しています

class Status(models.Model): 
    def __unicode__(self): 
     return self.text 

+0

status.text働いていません。 – picomon

0

アクセス(例えば{{status.text}}のように)つぶやきが含まれているか、そうのような自分のステータスモデルにユニコード方法を定義する実際の変数Djangoモデル。

+0

ステータスは私のdjangoアプリケーションのモデルではありません。それはtweepyのモデルから取られました。それについてどうすればいいですか?私はそれをtweepyのモデルで直接入力すべきですか? – picomon

1

API呼び出しは、呼び出しのJSONを返します。 Tweepyは、ステータスとして知られている独自のモデルに解析します。つぶやきのさまざまなパラメータを取得し、この状態モデルからdjangoテンプレートにレンダリングすることができます。

djangoテンプレートのコンテキストとして 'status'全体を渡し、forループでそれらを実行すると、そこにtweetという名前のstatuse.textを表示することができます。

twitterの標準テンプレートを使用して、必要に応じて自分のつぶやきをレンダリングしたり、独自のhtmlコードを作成したり、それらを表示したりすることができます。

Views.py:

def tweetstream(request): 
     consumer_key="" 
     consumer_secret="" 
     access_token="" 
     access_token_secret="" 
     auth=tweepy.OAuthHandler(consumer_key, consumer_secret) 
     auth.set_access_token(access_token, access_token_secret) 
     api=tweepy.API(auth) 
     statuses=Cursor(api.list_timeline, owner='', slug='').pages() 
     context = {'statuses':statuses} 
     return render(request, 'dash.html', context) 

はDjangoテンプレートでレンダリング:

{% for tweets in statuses %} 
tweets.text 
{% endfor %} 

https://dev.twitter.com/web/embedded-tweets

関連する問題