ネットにあった情報が古い tweepy のものばかりで、あまり思い通りに動かなかったので、シンプルに叩いたメモ。
Twitter API v2で Bearer認証しています。
叩いているAPIは GET /2/users/by/username/:username
です。
https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by-username-username
Bearerトークンは、各自でTwitter Developer Portalにて取得してください。
https://developer.twitter.com/en/portal/dashboard
import requests
def get_twitter_data(twitter_username):
api_url = "https://api.twitter.com/2/users/by/username/" + twitter_username
token = "【取得したBearerトークンをここにいれる】"
params = {
"user.fields": "description,profile_image_url"
}
headers = {
"Authorization": "Bearer " + token
}
response = requests.get(api_url, params=params, headers = headers)
response_data = response.json()["data"]
print(response_data)
get_twitter_data("kaitou1192")
地味にハマったのがQuery parametersの箇所。
指定しないと user.fields
の id
name
username
しか取れません。
例によって老人会のお話ですが Twitter API v1.1 だとイージーに取れていた記憶があるので、それに惑わされていましたが、解説ページの Example requests
の cURL (OAuth 2.0 User Access Token optional fields)
と Example responses
の Optional fields
にちゃんとサンプルが書かれていますね。失敗。
https://developer.twitter.com/en/docs/twitter-api/users/lookup/api-reference/get-users-by-username-username
サンプルコードのkaitou1192はわざと残してあります。
よかったら友だちになってください。 😎