はじめに: GASを使ったインスタ自動投稿の概要
Instagramの投稿は、日々の集客やブランディング活動において非常に重要な役割を担っています。
しかし、手動で定期的に投稿を行うには手間がかかり、忙しい日常の中では投稿を忘れてしまうこともあるでしょう。そこで注目されるのが、自動投稿や予約投稿の仕組みを活用する方法です。
Google Apps Script(以下GAS)を用いたInstagramの自動投稿・予約投稿は、特別な設備や高度なプログラミング技術がなくても始められるシステムです。
GASはGoogleが提供する無料のスクリプトエディタで、簡単なプログラムコードを使ってGoogleのサービスの自動化やプログラムの定期実行などするためのプラットフォームです。
このGASを利用すれば、Instagramの投稿も自動化し、指定した時間に投稿する「予約投稿」の実現も可能になります。
GASを使った自動投稿のメリット
GASを使ってInstagramの投稿を自動化することには、以下のようなメリットがあります。
- 定期的な投稿で集客力アップ
自動投稿を使うことで、計画的なタイミングで投稿でき、フォロワーへのアプローチを継続的に行うことが可能になります。これは特に、投稿が安定していることでフォロワーの興味や関心を引きやすくする効果も期待できます。 - 手動作業の削減で効率化
手作業による毎日の投稿は煩雑で時間がかかるものですが、自動化により投稿の準備や投稿そのものにかかる時間を大幅に削減できます。これにより、他の業務により多くの時間を割けるようになります。 - 一定の時間に投稿が可能
時間を指定して投稿できるため、特定のターゲット層がInstagramをチェックする時間帯に合わせて投稿をするなど、効果的な時間帯に投稿を集中させることができます。
こうした利点から、Instagramの投稿を自動化するためにGASを利用するのは非常に魅力的な選択肢です。
次に、GASがどのようなものか、基本的な仕組みについて簡単に解説していきます。
Google Apps Scriptとは?
Google Apps Script(以下GAS)は、Googleが提供するスクリプト作成ツールで、JavaScriptをベースにしており、比較的簡単にGoogleの各種サービス(Google スプレッドシート、Google カレンダー、Gmailなど)を自動化できるのが特徴です。GASを使うことで、手作業の多い業務や定期的なタスクを自動化し、作業効率を大幅に向上させることができます。
GASの基本的な仕組みと特徴
GASは、クラウド上でスクリプトが動作するため、ローカル環境に特別な開発環境を整える必要がありません。GASのエディタもGoogle ドライブ上に保存されるため、インターネットさえつながっていればどこからでも編集や実行が可能です。以下、GASの代表的な特徴について説明します。
- JavaScriptベースで初心者にもやさしい
GASはJavaScriptで記述するため、比較的習得しやすい言語構造です。
JavaScriptに慣れていれば、GASも簡単に扱えるようになります。プログラム初心者でも、今だとchatGPTなどの生成AIを使えば、ある程度のことはできてしまいます。 - Googleサービスと簡単に連携できる
GASを使えば、GoogleスプレッドシートやGmail、Googleカレンダーなどのさまざまなサービスと連携できます。
例えば、スプレッドシートのデータを使って自動的にメールを送信したり、特定の時間に通知を送るといった自動化もスムーズに実現可能です。 - 「トリガー」機能で定期的な実行が可能
GASには「トリガー」という機能があり、指定した時間や条件に従ってスクリプトを実行できます。
たとえば「毎朝9時に自動的にメールを送信する」といった定時処理や、特定のイベントをトリガーにしてスクリプトを実行することができます。このトリガーは、Instagramの予約投稿を実現する際に重要な役割を果たします。
GASの機能は他のプログラミング言語と比べてもシンプルで、Googleサービスとの連携には非常に強力です。
このGASを用いることで、Instagramの自動投稿や予約投稿が実現できる仕組みを作ることが可能です。
次のステップでは、GASとInstagram APIを連携させる準備について解説していきます。
Instagram APIとGASを活用する準備
Instagramの自動投稿や予約投稿を実現するには、Instagram API(アプリケーション・プログラミング・インターフェース)という仕組みを使って、GASとInstagramを連携させる必要があります。
APIとは、サービスのデータや機能に外部からアクセスするための窓口で、GASからInstagramに「画像を投稿する」「キャプションを追加する」といった指示を送る役割を果たします。
Instagram APIにアクセスするには、Meta(旧Facebook)開発者アカウントが必要となり、いくつかの準備ステップをクリアする必要があります。
最初の設定がめんどくさく、30分ほど時間かかります。一度取得してしまえば、その後触ることはないので、手順通りに実施してみてください。
ここでは、Instagram APIの利用に必要なMeta開発者アカウントの作成から、アクセストークンの取得までの簡単な流れを説明します。
詳細な設定方法は以下の方の記事に詳しく書かれてましたのでリンクおいておきます。
ちなみにInstagram APIは、無料です。
Instagramアカウントをプロアカウントに切り替える
InstagramのAPIを利用するためには、個人アカウントを「プロアカウント」に切り替える必要があります。
プロアカウントには「ビジネスアカウント」と「クリエイターアカウント」の2種類がありますが、APIを利用するにはビジネスアカウントが必要です。
切り替え手順
- Instagramアプリでプロフィールに移動し、右上のメニューアイコンをタップします。
- 「設定」→「プロアカウントに切り替える」を選択します。
- 案内に従って設定を完了します。
Facebookページを作る
Instagramのビジネスアカウントを使用してAPIでデータにアクセスするためには、Facebookページとの連携が必要です。ビジネスの情報を公開するページを作成します。
作成手順
- パソコンでFacebookにログインし、画面左側にある「ページ」→「新しいページを作成」を選択します。
- ページの名前、カテゴリ、説明を入力し、「作成」をクリックします。
- その後、プロフィール写真やカバー写真を追加して設定を完了させます。※3.はしなくても可
FacebookページとInstagramと連携する
次に、FacebookページとInstagramビジネスアカウントを連携させます。この連携により、FacebookアプリからInstagramアカウントにアクセスすることが可能になります。
連携手順
- Facebookのビジネスページにアクセスし、左メニューから「設定」をクリックします。
- 「リンク済みアカウント」または「Instagram」を選び、「アカウントをリンク」ボタンをクリックします。
- Instagramのログイン画面が表示されるので、プロアカウントに切り替えたInstagramアカウントでログインし、連携を承認します。
Facebookアプリを作る
次に、Instagram APIを使用するためのFacebookアプリを作成します。このアプリがInstagram APIを利用する際の「橋渡し」として機能します。
作成手順
- Meta for Developers(https://developers.facebook.com)にアクセスし、自身のFacebookアカウントでログインします。
- 画面右上の「アプリを作成」をクリックし、アプリのタイプを「ビジネス」に設定します。
- アプリの名前を入力し、ビジネスアカウントを選択後、「アプリの作成」をクリックします。
InstagramAPIを使う際に必要な無期限トークンを取得する
Instagram APIを利用するためには、通常のアクセストークンを「無期限トークン」に変換する必要があります。これにより、定期的な更新なしで長期間APIを利用することが可能になります。
無制限アクセストークンの取得前に、期限付きトークンを2回取得する必要があり、計3回の発行がなります。
取得手順
- ページ上部の[ツール]から[グラフAPIエクスプローラー]をクリック
- 右のアクセストークン内にある[アクセス許可]から、以下のアクセス許可を追加(入力)していきます。instagram_basic
instagram_manage_comments
instagram_manage_insights
instagram_manage_messages
instagram_content_publish
business_management
public_profile(もとから許可あり)
pages_show_list(もとから許可あり)
ipages_read_engagement(もとから許可あり) - アクセストークンの下にある水色の[i]をクリックし、[アクセストークンツールで開く]をクリック(1回目:期限1時間)
- [アクセストークンを延長]ボタンをクリック。長期アクセストークンが出てくるので、[デバッグ]をクリック(2回目:期限2ヶ月)
- [デバッグ]ボタン左にでているトークンをコピーしてください。次のステップで必要です。
- もう一度[グラフAPIエクスプローラー]を表示し、アクセストークンに先ほどコピーしたトークンを貼り付ける。
- 入力できたら上部の[送信]ボタン横のバーに「me/accounts」と入力して、[送信]を押す
- 送信すると、各種アカウント情報が出てくるので、その中の「access_token」が最終アクセストークンです。APIで使用するのでメモしてください。
InstagramAPIを使う際に必要なビジネスアカウントIDを取得する
無期限トークンが取得できたら、次にビジネスアカウントIDが必要です。このIDを使ってInstagramアカウントにアクセスし、投稿などの操作を行います。
取得手順
- Meta for DevelopersのGraph APIエクスプローラーを開きます。
- [送信]ボタン横のバーに「me?fields=accounts{instagram_business_account}」と入力して、[送信]を押す
- 各種情報が表示されるのですが、「instagram_business_account」の下にあるidがビジネスアカウントIDです。ビジネスアカウントIDも、APIを使用する際に必要な情報ですので、メモしておいてください。
ここまでで、Instagram APIとGASを連携するための準備が整いました。
実践:Google Apps ScriptでInstagram投稿のコードを書く
まず、GAS(Google Apps Script)を使い始めるための準備手順を確認しましょう。GASは、Googleのクラウド環境上で動作するプログラミング環境で、簡単にスクリプトを作成して自動化することができます。ここでは、GASのプロジェクトを作成し、Instagram投稿用のコードを書く準備を整えます。
Google Apps Scriptの始め方
- Googleドライブを開き、左上の「新規」ボタンをクリック
Googleのメニュー部分から「ドライブ」を選択し、googleドライブを開き、左上新規ボタンをクリック→「Googleスプレッドシート」を選択
2.「Googleスプレッドシート」の拡張機能タブから「Apps Script」を選択し、開く。
3.プロジェクト名をクリックして名前を変更しましょう。
任意の名前でいいですが、ここでは「インスタ投稿自動化」としました。
これでInstagram投稿用のコードを書き始める準備が整いました。
Google Apps Scriptは単体でもスクリプトなど他のAppから開くこともできますが、今回は予約投稿をスプレッドシートで管理したいため、スプレッドシートで開くことにしています。
インスタ自動投稿コードの概要
ここでは今回作成するインスタ自動投稿コードの概要を説明する。
まず、下記図のように「ファイル右のプラスをクリック」→「スクリプトをクリック」し、新規スクリプトを3つ追加してください。タイトルは任意ですがわかりやすいようにそれぞれ下記としてください。ここにコードを書いていきます。
- API用画像URL取得.gs
- インスタ投稿.gs
- 投稿スケジュール管理.gs
次に簡単に各種コードが何をするか解説します。
API用画像URL取得.gs:Drive上の画像URLを加工してスプレッドシートに保存
Instagram APIを使って画像を投稿する場合、ローカルに保存されたファイルを直接投稿することはできません。画像ファイルはクラウド上にアップロードする必要があり、ここではGoogle Driveを利用して画像を管理します。
ただし、Google Drive上の画像URLは、そのままではInstagram APIで直接使用できないため、少し加工が必要です。このコードは、まずDrive上の画像をInstagramで使用可能なURLに変換し、そのURLをスプレッドシートに保存しています。
下記コードをコピーして1.API用画像URL取得.gsに貼り付けてください。
コードの詳細については以下のnoteに記載があります。
有料記事になりますが、画像付きでインスタ自動投稿、予約投稿設定の仕方を解説してますので、よかったら見てみてください。
プログラミング初心者でもわかりやすいように画像付きで1操作毎に解説してます。
最初の無料部分は今回紹介した内容と同じです。
インスタ予約投稿のスプレッドシート管理
有料記事で紹介したコードを実行した場合、予約設定からインスタ投稿までどのようにおこなっているかイメージがわかないと思うので、ここで解説します。
下の画像はスプレッドシートで管理してる予約設定になります。
コードの実行前にA列とB列に日時を指定し、コードを実行します。
インスタ投稿の予約設定ができると、C列に「トリガー設定済み」が自動で書き込まれます。A列、B列の指定した時間になると自動でインスタ投稿が実行されます。
インスタ投稿が実行されると、D列に自動で「実行完了」と記入されるようになっています。
今回紹介するコードはスプレッドシートで管理している画像または動画を自動で投稿していくコードになります。
予約設定とは別の「画像フォルダ」というシートで画像URLを管理しています。
このシートは、Googleドライブにアップロードした画像をインスタ投稿可能なURLに変換して貼り付けています。このシートの作り方もnoteに記載しています。
画像フォルダではインスタ投稿後、F列の「進捗インデックス」が自動で更新されていきます。
次の投稿はF列の進捗インデックスの数字から5つの画像が投稿されます。
下記の画像だと、次のインスタ投稿はA列のインデックス5~9の画像がインスタに投稿され、進捗インデックスは10に自動で更新されます。
この用にA列のインデックスとF列の進捗インデックスをプログラム上で読み取り、投稿する画像を設定しています。
一度予約設定さえしてしまえば、その後予約設定した最終日になるまで、一切プログラムを触る必要はありません。
ぜひこのツールを活用してインスタ投稿、運営の効率化に役立ててみてください。
コメント