前提
Twitter API の /2/users/:id/tweets
を使用してあるユーザーの投稿を取得しようとしているのですが、何故か4件しか取得されず meta.next_token
も表示されません。より過去のツイートを取得したいのですが、足りないパラメータ等ありますか?
URL: https://api.twitter.com/2/users/1202623941388333058/tweets?exclude=retweets%2Creplies
Pythonのurllib.requestを使用しています。
発生している問題・エラーメッセージ
{ "data": [ { "id": "1552673766911918080", "text": "https://t.co/5R2Ng6Eunt" }, { "id": "1552519219065110528", "text": "#初音ミク レーシングミク2022 https://t.co/zsrE6GlIZg" }, { "id": "1552312159153303552", "text": "https://t.co/ksjZjhFYra" }, { "id": "1552156831455367169", "text": "#原神 刻晴 https://t.co/llOAnJmxsJ" } ], "meta": { "result_count": 4, "newest_id": "1552673766911918080", "oldest_id": "1552156831455367169" } }
該当のソースコード
Twitter APIの仕様に関する質問なのでコードが載ってても意味ないと思いますが一応。
Python
1import json 2import os 3from urllib import request, parse 4from urllib.error import HTTPError, URLError 5import dotenv 6dotenv.load_dotenv() 7 8querys = parse.urlencode({ 9 'exclude': 'retweets,replies', 10}) 11 12req = request.Request( 13 url='https://api.twitter.com/2/users/' + '1202623941388333058' + '/tweets' + '?' + querys, 14 headers={ 15 'Authorization': 'Bearer ' + os.getenv('TWITTER_BEARER') 16 }, 17) 18 19try: 20 with request.urlopen(req) as res: 21 print(json.dumps(json.loads(res.read()), indent=4, ensure_ascii=False)) 22except HTTPError as err: 23 print(err.code) 24except URLError as err: 25 print(err.reason)
試したこと
上記のコードを実行した。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。