Python,如何将状态/ update_with_media发布到Twitter?

时间:2012-05-23 12:16:03

标签: python twitter

我能够在Python中成功发布状态更新(推文):

import urllib
import oauth2 as oauth

token = oauth.Token(access_token,access_token_secret)
consumer = oauth.Consumer(consumer_key,consumer_secret)

client = oauth.Client(consumer,token)

data = {'status': 'hello world'}
request_uri = 'https://api.twitter.com/1/statuses/update.json'

resp, content = client.request(request_uri, 'POST', urllib.urlencode(data))

现在我想知道我需要更改哪些内容才能使用update_with_media发布图片?

2 个答案:

答案 0 :(得分:10)

最后我得到了它的工作,并希望让那些正在努力解决这个问题的人知道我是如何使用漂亮的Twython库轻松完成它的,它很好地抽象了这些函数:

from twython import Twython

twitter = Twython(
    twitter_token = 'consumer_key',
    twitter_secret = 'consumer_secret',
    oauth_token = 'access_token',
    oauth_token_secret = 'access_token_secret'
)

twitter.updateStatusWithMedia('/home/blah/projects/pathexample/static/example.png', status='hello!')

答案 1 :(得分:1)

也许这些方面的东西?

data = {'status': 'hello world'
      , 'media': ['image.jpg']
      }
request_uri = 'https://upload.twitter.com/1/statuses/update_with_media.json'

resp, content = client.request(request_uri, 'POST', urllib.urlencode(data))

通过查看Working with statuses/update_with_mediaPOST statuses/update_with_media,这很快被删除了,可能不正确。