2017-08-26 2 views
1

私はpython-twitterを使用しようとしています。私はthis tutorialに従っています。ここでPython Twitter API TwitterError:user_idは型intでなければなりません

は私のコードです:

tweet = cache.get('tweet') 

if not tweet: 
    tweet = twitter.Api().GetUserTimeline(settings.TWITTER_USER)[0] 
    tweet.date = datetime.strptime(tweet.created_at, "%a %b %d %H:%M:%S +0000 %Y") 
    cache.set('tweet', tweet, settings.TWITTER_TIMEOUT) 

しかし、私は次のエラーを取得しています:

Twitter.error.TwitterError: {'message': '"user_id" must be type int'} 

私はチュートリアルのような変数を設定しました:

TWITTER_USER = 'CaseyNeistat' 
TWITTER_TIMEOUT = 3600 

です私が間違っていることは何ですか?

+1

明らかに、名前(文字列)ではなくユーザーID(整数)が必要です。 [README](https://github.com/bear/python-twitter/blob/master/README.rst)で、名前を渡したい場合は 'screen_name'キーワード引数を使います。 – jonrsharpe

+0

@jonrsharpeしかし、私はTWITTER_USER – silentprogrammer

+0

の文字列を渡したリンクを共有しているかもしれません。 APIが変更され、別のバージョンを使用している可能性があります。エラーメッセージと現在のドキュメントはかなり明確です。 – jonrsharpe

答えて

0

この記事は約9年前に作成されました。それ以来、APIは何度も変更されていました。ここで

python-twitter documentationから関数のシグネチャである:

GetUserTimeline(user_id=None, screen_name=None, since_id=None, max_id=None, count=None, include_rts=True, trim_user=False, exclude_replies=False)

ですから、GetUserTimeline(screen_name=settings.TWITTER_USER)

をしたいそうでなければ、あなたの文字列がuser_idとして行くだろう。

関連する問題