0
#!/usr/bin/python
# -*- coding: iso-8859-15 -*-
import twitter

class twitt():
    def __init__(self):
        consumer_key = '...'
        consumer_secret = '...'
        access_key = '...'
        access_secret = '...'

        encoding = 'iso-8859-15'

        self.api = twitter.Api(consumer_key=consumer_key, consumer_secret=consumer_secret, access_token_key=access_key, access_token_secret=access_secret, input_encoding=encoding)

    def run(self):
        statuses = self.api.GetPublicTimeline()
        print statuses

h = twitt()
h.run()

このコードは機能しません。readme と私が見つけたすべての例から直接取得したものです。「get_access_token.py」について何かを見つけましたが、それへの参照はありません!?

user@host:~# updatedb
user@host:~# locate get_access_token
user@host:~#

エラー: TypeError: __init__() got an unexpected keyword argument 'access_token_key'

参考文献:
- http://code.google.com/p/python-twitter/issues/detail?id=215
- https://github.com/bear/python-twitter/tree/master/examples

4

2 に答える 2

2

twitterあなたが考えている Twitter ライブラリではないかもしれないとしか思えません。

次のような結果が得られるかどうかを確認してください。

>>> import twitter
>>> twitter.__file__
'/usr/local/lib/python2.7/dist-packages/python_twitter-0.8.2-py2.7.egg/twitter.pyc'

>>> import inspect
>>> inspect.getargspec(twitter.Api.__init__)
ArgSpec(args=['self', 'consumer_key', 'consumer_secret', 'access_token_key', 'access_token_secret', 'input_encoding', 'request_headers', 'cache', 'shortner', 'base_url', 'use_gzip_compression', 'debugHTTP'], varargs=None, keywords=None, defaults=(None, None, None, None, None, None, <object object at 0x7f023505a220>, None, None, False, False))
于 2012-11-21T22:45:12.100 に答える
0

API のバージョンが間違っています。主に(のみ?)ユーザー名/パスワード認証をサポートする古いバージョンを使用していました。

twitter.py の "0.6-devel" を使用して
いましたが、0.8.X に更新したところ、動作が改善されました。

編集:

API も時代遅れで、Twitter 経由のストリーミング API をサポートしていないため、重要な投稿のみを取得できます。ハッシュタグ検索ですべての投稿を取得する必要がありました。

お勧めします:
SixOhSix twitter API: https://github.com/sixohsix/twitter 使いやすく、魅力的に機能し、必要な結果が得られます。

于 2012-11-21T22:49:36.847 に答える