不能使用twitterapi通过python发推文

时间:2012-08-11 20:11:42

标签: python twitter

>>> import twitter
>>> api = twitter.Api()
>>> api = twitter.Api(consumer_key='bkvRjwyoMnBo1EWw',consumer_secret='9Cg4oXgk0eIphAnewppB0sXlHQ1cBhkk',access_token_key='27436-GlzGFHPgbgGQV5RRc8oSiqeY4XsDZ',access_token_secret='fwekIDmxTPy3ZDdoVh5EVcQOxzg')
>>> status = api.PostUpdate('I love python-twitter!')

Traceback (most recent call last):
  File "<pyshell#3>", line 1, in <module>
    status = api.PostUpdate('I love python-twitter!')
  File "c:\python27\python-twitter-0.8.2\twitter.py", line 2766, in PostUpdate
    data = self._ParseAndCheckTwitter(json)
  File "c:\python27\python-twitter-0.8.2\twitter.py", line 3668, in _ParseAndCheckTwitter
    self._CheckForTwitterError(data)
  File "c:\python27\python-twitter-0.8.2\twitter.py", line 3691, in _CheckForTwitterError
    raise TwitterError(data['error'])
TwitterError: Read-only application cannot POST
>>> dir(twitter)
['ACCESS_TOKEN_URL', 'AUTHORIZATION_URL', 'Api', 'CHARACTER_LIMIT', 'DEFAULT_CACHE', 'DirectMessage', 'Hashtag', 'List', 'REQUEST_TOKEN_URL', 'SIGNIN_URL', 'Status', 'StringIO', 'Trend', 'TwitterError', 'Url', 'User', '_FileCache', '_FileCacheError', '__author__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', '__version__', '__warningregistry__', 'base64', 'calendar', 'datetime', 'gzip', 'httplib', 'md5', 'oauth', 'os', 'parse_qs', 'parse_qsl', 'rfc822', 'simplejson', 'sys', 'tempfile', 'textwrap', 'time', 'urllib', 'urllib2', 'urlparse']

如何恢复这个TwitterError?

2 个答案:

答案 0 :(得分:2)

在您的应用设置中(位于dev.twitter.com/apps),您需要将其设置为读写应用。

答案 1 :(得分:0)

您需要安装python_twitter,因为您使用的命令属于Python_twitter,我认为您遵循twitter的文档。你需要检查一下。你的所有问题都有同样的问题。请检查它。您需要将您的应用程序更改为读/写。