我如何才能回复实际的推文,我的意思是它应该以人类可读的格式显示推文?
我不希望它像这样返回推文:
<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))
答案 0 :(得分:1)
tweepy.models.Status只是一个类。它可能包含可用于访问推文内容的字段。例如,尝试status.text
。
答案 1 :(得分:1)
API调用返回调用的JSON。 Tweepy将其解析为自己的模型Status。您可以获取推文的不同参数,并将其从此状态模型渲染为django模板。
将整个'状态'作为上下文传递给django模板,并在那里以for循环运行它们,你可以在那里显示东西,比如显示推文,'statuses.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 %}
答案 2 :(得分:0)
访问包含推文的实际变量(例如{{status.text}})或在状态模型上定义 unicode 方法,如下所示:
class Status(models.Model):
def __unicode__(self):
return self.text
假设Status是Django模型。