この記事は Wano Group Advent Calendar 2024 25日目(最終日)の記事です
昨日は @ktat さんの Google Cloud の請求先アカウントごとにメールの送信先を変える - あるいはGoogleのUIへの愚痴 が公開されていますので、こちらもぜひご覧ください
アドカレ最終日…!
みなさんこんにちは!アドカレ12日目にもおりました @rom1000_onigiri です
WanoGroupのアドカレも本日で締めとなります
締めのテーマはクリスマスにちなんで、InstagramAPIを使って巷の人間たちは誰とどう過ごしているのかをざっくり調査してみました。
…結果は不問としてください(最後まで読んでみてください)
調査方法
InstagramAPIを用いる。
今回は APIを叩いたその時間から24時間以内の、特定のハッシュタグがついた投稿 を取得する。
特定のハッシュタグの種類は、以下とする。
#クリスマス #デート
#クリスマス #友達
#クリスマス #家族
#クリスマス #バイト
#クリスマス #仕事
#クリスマス #ぼっち
Instagramアカウントの準備
※アカウントを持っていない場合は新規登録をすること
アカウントタイプの切り替え
APIをしようするにはビジネスアカウントでないといけないので切り替えの対応が必要となる。
Facebookアカウントの準備
※アカウントを持っていない場合は新規登録をすること
ページの作成
InstagramアカウントとFacebookアカウントの連携
Facebook側から連携
Instagramのプロアカウントが候補に出てくるので、それを選択すると承認リクエストポップアップが出るのでログイン。
Facebookアプリを作成する
Meta for Developersに登録
https://developers.facebook.com/
基本的に、案内に沿って登録すれば問題なかった。
アプリの作成
基本的に、案内に沿って登録すれば問題ないが、
ユースケースは その他 を選択し、次の項目で ビジネス を選択すること。
次のセクションで ビジネスポートフォリオ が設定できるようになっているので、前項で連携したInstagramアカウントを選択する。
トークンを取得する
1つ目:有効期限1時間
アクセス許可で以下の項目を追加して、アクセストークンを生成。
- instagram_basic
- instagram_manage_comments
- instagram_manage_insights
- instagram_manage_messages
- instagram_content_publish
- business_management
- pages_show_list
- pages_read_engagement
2つ目:有効期限2ヶ月
トークンが生成された横にあるinfoマークの押下すると詳細情報が表示される。
下の方にある「アクセストークンツールで開く」を押下。
遷移したページの一番下にある「アクセストークンを延長」を押下。
3つ目:有効期限無制限
前項の画像右端にある「デバッグ」を押下し、遷移先のページ上部にあるトークンをコピー。
先ほどのグラフAPIエクスプローラーに戻り、コピーしたトークンを貼り付ける。
次にGETするURL部分を me/accounts
に置き換える。
最後に「送信」を押下し、期限無制限の最終アクセストークンが発行される。( ここまで長えよ。。 )
このトークンを使用してAPI叩くので、控えておく。
ビジネスアカウントIDの取得
グラフAPIエクスプローラのGETするURLに me?fields=accounts{instagram_business_account}
と入力し「送信」を押下。
このIDも使用するので控えておく。
特定のハッシュタグがついた投稿を取得する
ハッシュタグAPIには下記の制限がある
- 1週間で取得できるハッシュタグは 30個 まで
- 人気投稿APIと最新投稿API合わせて30個まで
- (今回は使用しないが)画像情報は 8時間 で無効になる
ハッシュタグIDを取得する
グラフAPIエクスプローラのGETするURLに下記のクエリを当てはめていき、ただひたすら送信 → ID控え。
ハッシュタグ | ID |
---|---|
クリスマス | 17844009163028327 |
デート | 17843869810054283 |
友達 | 17841563827122291 |
バイト | 17841564262102268 |
仕事 | 17841564040106788 |
家族 | 17841563074128611 |
ぼっち | 17843731684035203 |
ハッシュタグIDから投稿データを取得する
前項同様、グラフAPIエクスプローラのGETするURLに下記のクエリを当てはめていき送信
- エンドポイント
${ハッシュタグID}/recent_media
- user_id パラメータ
- 控えておいてあるビジネスアカウントのID
- access_token パラメータ
画像では投稿idのみ取得しているが、 fields
パラメータにいいね数やコメント数などを入れることによって他の情報を取得することもできる
取得できる情報の詳細は 公式リファレンス へ
調査結果
limitが強制的に50件になってしまう罠 + リクエスト数上限の関係で、すべてのハッシュタグ投稿数を調査することはできなかった。
結果、調査失敗として終了する。 ズコーーーーッ
総評
総投稿数は取得できなかったが、デートしているアカウントは少なくとも300以上いた(ひたすらpagingのnextURLを叩いた)
アドベントカレンダーの最後の最後に、毒にも薬にもならない内容で締めてしまい、本当に申し訳ございませんでしたー!!!!
備考
無念な結果に終わったが、自分はこれから予約していたクリスマスケーキとチキンを取りに行き、豪華なクリスマスディナーを 1人と 2匹で過ごすので、特に悔しさなどはない。 …ないいぃ!!!!!!!!!
PR
現在、Wanoグループ / TuneCore Japan では人材を募集しています。興味のある方は下記をご参照ください
Wano | Wano Group JOBS
TuneCore Japan | TuneCore Japan JOBS