私はこのInstagram APIを初めて使用し、エンドポイントに関するドキュメントを読みました。これは私が使用しているエンドポイントです。
/v1/tags/{tag-name}/media/recent?access_token=ACCESS-TOKEN
画像を取得していますが、アカウントの写真のみです。欲しいのは、タグ名を付けると、アカウントの写真だけでなく、Instagramのすべての写真も表示されることです。
私は長い時間をかけてきたが、記録のためだけに知っている。
これにはpublic_scope
権限(アカウントだけでなく、Instagramのすべての公開データへのアクセスを許可する権限)が必要なので、アプリをInstagramでレビューして承認する必要があります。ただし、1サイトの個人プロジェクトにAPIを使用している場合、Instagramはそれを承認しません。
Instagramのドキュメントからの抜粋です。
1:Instagramの統合を最もよく説明しているユースケースはどれですか?
R:ウェブサイトにハッシュタグコンテンツとパブリックコンテンツを表示したい。
A:このユースケースはサポートされていません。ハッシュタグベースのコンテンツをWebサイトに表示するなど、1回限りのプロジェクトのpublic_content権限は承認しません。代替ソリューションとして、独自のInstagramコンテンツを表示するか、このタイプのサービス(コンテンツの検出、モデレーション、表示)を提供する会社を見つけることができます。
詳細については、Permission Reviewのドキュメントをご覧ください。
クライアントはサンドボックスモードであり、招待されたユーザーが投稿した写真のタグのみを検索できます。 https://www.instagram.com/developer にログインし、クライアントを編集して[GO LIVE]ボタンをクリックする必要があります。
「GO LIVE」ボタンが無効になっている場合、アプリを最初にInstagramでレビュー済みです:Permissionsタブをクリックしてレビュー用に送信してください。 (提出を開始するには、会社名、連絡先メールアドレス、およびプライバシーポリシーのURLが必要です。)承認されると、[Go Live]をクリックできるようになります。
あなたはそれを試すことができ、それは私のために働いています。
/v1/tags/{tag-name}/media/recent?client_id={YOUR_CLIENT_ID}
私のクライアントIDは「許可レビュー」の前に作成され、現在機能しています。許可レビューをInstagramに送信しようとしています。
hashtag
とは、tags
を意味します。
わたしにはできる。 python client を使用していますが、独自のクライアントを開発している場合はうまく機能するはずです。
from instagram.client import InstagramAPI
api =InstagramAPI(client_secret=settings.CLIENT_SECRET,
access_token=settings.ACCESS_TOKEN)
result = api.tag_recent_media(tag_name='castle')
media = result[0]
for m in media:
print (m.images)
print (m.user)
print (m.tags)