こんにちは、DXCEL WAVEの運営者(@dxcelwave)です!
- Pythonを活用してInstagramの運用を効率化したい
- Instabotライブラリの利用方法を詳しく知りたい
Instagramの運用自動化とは|何ができるの?
Instagramの運用自動化とは、これまで手作業で行なってきたインスタ操作をシステムで自動化することを指します。
Python等のプログラミング言語を活用すると、インスタアプリ上での操作は全て自動化できます。さらに、プログラムの組み合わせにより、インスタデータの自動収集・グラフ作成・結果考察等の一連作業もまとめて効率化できるようになります。
【Python】Instabotとは
Instabotとは、Instagramの操作をPython環境で操作できるようにするライブラリです。
本記事ではInstabotを活用してInstagramを自動で操作する方法について解説します。
Instabotでできること
Instabotを活用すると、Python環境で次のような操作が実現できるようになります。
アクション系
- フォロー
- フォロー解除
- DM送付
- Likeを送付
- 写真投稿
分析系
- ユーザー情報チェック
- フォロー数チェック
- フォロワー数チェック
Instabot利用上の注意点
Instabotは手軽に利用できる一方で、「動作が重たい」「Instagram公式からセキュリティチェックが入る」など不安定な部分もあることに注意が必要です。
本格的にInstagramの効率化を実現したい場合、Meta(旧Facebook)が提供するInstagram Graph APIを活用することを強く推奨します。
Instagram Graph APIの利用方法について詳しく知りたい方はこちらの記事をご覧下さい。
Instagram Graph APIの認証・利用手順|アクセストークン・アプリ・インスタビジネスアカウントID取得
Instagram Graph APIを活用したインスタ自動運用に興味がある方向けに、API利用に至るまでの準備事項・手順を詳しく解説します。
Instabot利用時|ライブラリのインストール
Python環境でInstabotライブラリを利用する場合、以下を実行して事前にライブラリインストールを行なっておきましょう。
pip install instabot
【Python】Instabotを活用したInstagramの自動操作|アクション系
Instabotを活用してInstagramを自動操作する方法について解説します。
【事前準備】Instagramへのログイン操作
はじめに、Instagramアカウントにアクセスするためのインスタンスを作成します。
username
にインスタユーザー名、password
にインスタパスワードを記述し、コードを実行しましょう。
from instabot import Bot
# インスタボット
bot = Bot()
# ログイン
bot.login(username="XXXXXXXXXX", # Instagramのユーザー名を入力
password="XXXXXXXXXX") # Instagramのパスワードを入力
【実践】Instagramアカウントをフォローする
Python環境でinstabotを利用して、インスタグラムアカウントをフォローする方法を以下に示します。
特定のInstagramユーザーを指定してフォローしたい場合
# フォローしたいユーザー名
user_name = "instagram"
# フォロー
bot.follow(user_name)
複数のInstagramユーザーをまとめてフォローしたい場合
# ユーザーリスト
user_lists = ["user1", "user2", "user3"]
# フォロー
bot.follow_users(user_lists)
【実践】Instagramアカウントをフォロー解除する
Python環境でinstabotを利用して、インスタグラムアカウントをフォロー解除する方法を以下に示します。
特定のInstagramユーザーを指定してフォロー解除したい場合
# フォローしたいユーザー名
user_name = "instagram"
# フォロー
bot.unfollow(user_name)
複数のInstagramユーザーをまとめてフォロー解除したい場合
# ユーザーリスト
user_lists = ["user1", "user2", "user3"]
# フォロー
bot.unfollow_users(user_lists)
【実践】ダイレクトメッセージ(DM)を送付する
Python環境でinstabotを利用して、ダイレクトメッセージを送信する方法を以下に示します。
特定のInstagramユーザーを指定してDMを送りたい場合
# DMメッセージ
message = "メッセージ内容です"
# ユーザー名
user_name = "instagram user name"
# DM送付
bot.send_message(message, # メッセージ
user_name # 送付先
)
複数のInstagramユーザーに対してDMを送りたい場合
# ユーザーリスト
user_lists = ["user1", "user2", "user3"]
# DMメッセージ
message = "こんにちは!"
# DM送付
bot.send_messages(message, # メッセージ
user_lists # 送付先
)
【実践】Likeメッセージを送る
Python環境でinstabotを利用して、Like(いいね)を送信する方法を以下に示します。
特定のInstagramユーザーを指定してLikeを送りたい場合
# ユーザー名
user_name = "instagram user name"
# DM送付
bot.send_like(message, # メッセージ
user_name # 送付先
)
複数のInstagramユーザーに対してLikeを送りたい場合
# ユーザーリスト
user_lists = ["user1", "user2"]
# Likeを送付
bot.send_likes(user_lists)
【実践】画像を投稿する
Python環境でinstabotを利用して、インスタグラムに画像をアップロードする方法を以下に示します。
# 投稿したい画像のディレクトリ
picture = "https://投稿したい画像リンク.jpg"
# 投稿文
message = 'これは投稿文です'
# 画像投稿
bot.upload_photo(picture, # 写真
caption=message # 投稿文
)
【Python】Instabotを活用したInstagramの自動操作|分析系
続いて、instabotを活用してインスタグラムの主要指標を獲得する方法について解説します。
【事前準備】Instagramへのログイン操作
はじめに、Instagramアカウントにアクセスするためのインスタンスを作成します。
username
にインスタユーザー名、password
にインスタパスワードを記述し、コードを実行しましょう。
from instabot import Bot
# インスタボット
bot = Bot()
# ログイン
bot.login(username="XXXXXXXXXX", # Instagramのユーザー名を入力
password="XXXXXXXXXX") # Instagramのパスワードを入力
【実践】特定のInstagramアカウントの情報をチェックする
インスタアカウントの基本情報を取得したい場合、以下のコードを実行します。
# ユーザー名
user_name = "instagram"
# ユーザー情報取得
bot.get_user_info(user_name)
【実践】特定のInstagramアカウントのフォロー数をチェックする
インスタアカウントのフォロー数をチェックしたい場合、以下のコードを実行します。
# ユーザー名
user_name = "instagram"
# フォロー取得
follow = bot.get_user_follow(user_name)
# 出力
print(user_name+"フォロー数: "+len(follow))
# 出力イメージ
# {'pk': 25025320,
# 'username': 'instagram',
# 'full_name': 'Instagram',
# 'is_private': False,
# 'profile_pic_url': 'https://scontent-lax3-1.cdninstagram.com/v/t51.2885-19/281440578_1088265838702675_6233856337905829714_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-lax3-1.cdninstagram.com&_nc_cat=1&_nc_ohc=OA3xGrk24oMAX-KCdhi&edm=AEF8tYYBAAAA&ccb=7-5&oh=00_AT-8Fo6t-wGSN8DjEW67Uw4I4kzu7lkkO4zGL_59Ty-RIA&oe=62DC7318&_nc_sid=a9513d',
# 'profile_pic_id': '2839516949842903169_25025320',
# 'is_verified': True,
# 'follow_friction_type': 0,
# 'has_anonymous_profile_picture': False,
# 'media_count': 7189,
# 'geo_media_count': 0,
# 'follower_count': 532268529,
# 'following_count': 136,
# 'following_tag_count': 5,
# 'is_supervision_features_enabled': False,
# 'biography': "Discover what's next on Instagram 🔎✨",
# 'biography_with_entities': {'raw_text': "Discover what's next on Instagram 🔎✨",
# 'entities': []},
【実践】特定のInstagramアカウントのフォロワー数をチェックする
インスタアカウントのフォロワー数をチェックしたい場合、以下のコードを実行します。
# ユーザー名
user_name = "instagram"
# フォロワー取得
followers = bot.get_user_followers(user_name)
# 出力
print(user_name+"フォロワー数: "+str(len(followers)))
【実践】特定のInstagramアカウントをフォロワー名を取得する
インスタアカウントのフォロワー名を取得したい場合、以下のコードを実行します。
# ユーザー名
user_name = "instagram"
# フォロワー取得
followers = bot.get_user_followers(user_name)
print(f"フォロワー数: {len(follower_ids)}")
# フォロワーのユーザー名を取得
follower_names = [bot.get_username_from_user_id(follower) for follower in followers]
# フォロワー名を表示
print(f"フォロワー名: {follower_names}")
【参考】Instabotにログインできない場合|エラー対策
Instabot利用に際して、次のようなエラーが頻繁に報告されている印象です。以下のエラーに遭遇した場合、対処法を試してみましょう。
Instabotエラー|Key Error 「’ds_user’」
PCローカル環境でInstabotを利用する場合、ds_userというKeyエラーに遭遇する場合があります。これは、cookie.jsonファイルに原因があるようで、次のような生成されたcokie情報を除外するコードを実行した上でinstabotを利用すると、問題なくログインできるようです。
import os
import glob
cookie_del = glob.glob("config/*cookie.json")
os.remove(cookie_del[0])
Instabotエラー|Instagram Error Challenge Required
こちらはinstabotからログインを試みた際、セキュリティ上の観点でログイン阻止された時に出現する警告エラーです。
一度インスタグラムアプリから手動でログインし、instabotでログインした旨を尋ねられるため、「正常なログイン」であることを証明すれば次回以降問題なくinstabotからログインできるようになります。
【参考】インスタグラム・その他SNSの運用効率化
当サイトではSNS運用を効率化するための方法を多数解説しています。
Instagram Graph APIを活用したインスタ運用の自動化
カテゴリ | 記事名 |
---|---|
API利用手順 | Instagram Graph APIの使い方・認証手順・できること |
API利用手順 | Instagram Graph APIの動作チェック |
API利用手順 | 有効期限を長期化したアクセストークン取得 |
インスタ運用効率化 | Instagramユーザー情報取得 |
インスタ運用効率化 | Instagramに投稿したメディア情報取得 |
インスタ運用効率化 | Instagramハッシュタグの検索結果取得 |
インスタ運用効率化 | Instagramに写真や動画をアップロード |
インスタ運用効率化 | Instagramメディア・ユーザーインサイト取得 |
インスタグラム運用代行サービス
「面倒なSNS運用を全て代行してほしい」「質のいいフォロワーを獲得したい」「SNS経由での収益導線を強化したい」という方向けにこちらのサービスもおすすめします。
Twitter運用の効率化
Twitter運用を自動化する方法
- Twitter検索結果に基づくデータ収集・分析
- 定期的に自動ツイートする方法
- 自動でファボ(いいね)やリツイートする方法
- 自動でフォロー・ブロック・ミュートする方法
最後に
お問い合わせフォーム
上記課題に向けてご気軽にご相談下さい。
お問い合わせはこちら