1

我使用 Django-social-auth 对 Django 项目的用户进行身份验证。因此,我想我拥有 Twitter 用户的所有必要信息,可以代表他们在他们的 Twitter 帐户上发帖。那么我真的需要安装一个新的应用程序吗?或者手头的信息我该怎么做?这不只是将相关信息发布到 Twitter API 的问题吗?

4

3 回答 3

2

您可以将代码提取到您自己的项目中,这样就可以了。但是使用开源库的好处是,当 Twitter 或 Social Network X 更改它的 API 时,很有可能该库如果流行,就会得到更新,而不是您需要进行更改。

于 2012-05-09T13:08:50.227 回答
2

因此,如果您使用 Django Social Auth,您可以:

import urllib
import settings
import oauth2 as oauth

try:
    twitter_user = user.social_auth.get(provider='twitter')
except:
    return
if not twitter_user.tokens:
    return
access_token = twitter_user.tokens['oauth_token']
access_token_secret = twitter_user.tokens['oauth_token_secret']

token = oauth.Token(access_token,access_token_secret)
consumer_key = settings.TWITTER_CONSUMER_KEY
consumer_secret = settings.TWITTER_CONSUMER_SECRET
consumer = oauth.Consumer(consumer_key,consumer_secret)
client = oauth.Client(consumer,token)

data = {'status':'Your tweet goes here'}
request_uri = 'https://api.twitter.com/1/statuses/update.json'
resp, content = client.request(request_uri, 'POST', urllib.urlencode(data))
于 2012-05-10T12:55:05.543 回答
0

是的,我相信如果您有必要的用户 twitter 帐户详细信息,那么您可以编写一个 (django) 应用程序来执行此操作。你可以使用类似python-twitter的东西来发布到 twitter。

您应该可以在此处找到有关 Twitter api 的更多信息。

于 2012-05-09T12:42:21.617 回答