idtwi というサービスを自分で再現できるように、Twitter APIの使い方を知りたい。
- TwitterのAPIのバージョンは、2023.03.21現在だと2.0と呼ばれるものだと思います。
- ユーザー名からIDを検索する事は、一応できそうです。
- しかし、そのユーザーが過去にどんなユーザー名を使用していたかが取得できません。
前提
pythonで以下のようなソースを書いて、ユーザーの情報を取得する事は成功しています。
python
1import requests 2import urllib3 3import setting #Key項目を設定しているファイルだよ。別で管理していない人は、KEY=直書きしてね。 4from func.func_tweet import getTweetById 5from func.get_lookup import lookup_main 6from func.get_users_with_bearer_token import get_users 7from func.user_tweets import user_tweets 8 9import json 10 11http = urllib3.PoolManager() 12KEY = setting.TWITTER_BEARER_TOKEN 13 14url = "https://api.twitter.com/2/users/by?usernames=TwitterDev,TwitterAPI&user.fields=description,created_at" 15 16bearer_token = setting.TWITTER_BEARER_TOKEN 17 18def connect_to_endpoint(url): 19 response = requests.request("GET", url, auth=bearer_oauth,) 20 print(response.status_code) 21 if response.status_code != 200: 22 raise Exception( 23 "Request returned an error: {} {}".format( 24 response.status_code, response.text 25 ) 26 ) 27 return response.json() 28 29def bearer_oauth(r): 30 r.headers["Authorization"] = f"Bearer {bearer_token}" 31 r.headers["User-Agent"] = "v2UserLookupPython" 32 return r 33 34json_response = connect_to_endpoint(url) 35print(json.dumps(json_response, indent=4, sort_keys=True)) 36
結果は以下のようになりました。
json
1{ 2 "data": [ 3 { 4 "created_at": "2013-12-14T04:35:55.000Z", 5 "description": "The voice of the #TwitterDev team and your official source for updates, 6news, and events, related to the #TwitterAPI.", 7 "id": "2244994945", 8 "name": "Twitter Dev", 9 "username": "TwitterDev" 10 }, 11 { 12 "created_at": "2007-05-23T06:01:13.000Z", 13 "description": "Tweets about changes and service issues. Follow @TwitterDev\u00a0for more.", 14 "id": "6253282", 15 "name": "Twitter API", 16 "username": "TwitterAPI" 17 } 18 ] 19}
試してみた事を追記してみました。
回答1件
あなたの回答
tips
プレビュー