【30万円分を無料公開】PythonでInstagramの自動いいねをコピペで作ろう!

【30万円分を無料公開】PythonでInstagramの自動いいねをコピペで作ろう!

Instagramで「自動いいね」ができる無料ツールを探しているあなたへ。残念ながら無料で利用が使えるツールは2022年時点で探しても見つかりませんでした。ただ、どうしても利用がしてみたい方だけに、30万円分の価値がある情報を公開します。

この記事では、誰でも簡単にコピペで作れる「Instagramの自動いいね」を作る方法を紹介しています。2022年時点でプログラミング言語「Python」で動作が確認できており、アカウント凍結なども発生はしていません。

ただ、Instagramでは規約で自動ツールを禁止しているため、活用の仕方によってアカウント凍結のリスクがあります。そのため、全て「自己責任」で利用をお願いします。

本記事の内容

  • 無料の自動いいねツールはない!?

  • Pythonを活用した自動いいねツールとは?

  • プログラミングの環境を事前に準備

  • これが30万円分の価値があるコードの全て

この記事を書いている私は仕事の合間にPythonを1年ほど勉強し、様々な自動化を試しているプログラミング初心者です。

文系でプログラミングとは離れた仕事についていましたが、一念発起しプログラミングの勉強を開始しました。

そのため、現時点でプログラミングの知識がない初心者の方でも実装ができるように分かりやすく解説しています。

無料の自動いいねツールはない!?

2022年時点では調査したが「0」個

Instagramで自動いいねができるツールはあるものの、全て有料版のものしか探し出すことはできませんでした。

一定期間は無料で使えるというツールが多かったのですが、なるべくお金をかけずに使えるツールがあれば欲しいという気持ちから、方法を模索し続けました。

無料でなければ作れば良い

ちょうど、Pythonの勉強を始めていたこともあり、いいねのツールがなければ、自分で作ってしまえば良いと考えました。

参考記事も全て英語だったり、何度もエラーが発生したりと苦労しましたがなんとか実現することができました。

初心者が失敗しがちなポイントも含めて解説していきたいと思います。

Pythonとは

Pythonとはプログラミング言語の1つです。

プログラミング言語はWeb開発から、アプリ開発と用途に応じて様々なものがあります。

Pythonはデータサイエンティストとして分析やAIの開発などに利用されることが多い言語です。

今回はPythonを活用したコードを紹介していきます。

Pythonを活用した自動いいねツールとは?

Webブラウザからログインしていいねを自動で実施する

Instagramはスマートフォンのアプリからだけでなく、PCでもログインができるWeb版があります。

プログラミングはPCで実行をする必要があるため、今回の自動いいねツールは、Web版のInstagramを活用します。

Web版はhttps://www.instagram.com/からアクセスすることができます。

なるべく人間に近い動作をする必要がある

Instagramでは規約で自動ツールの利用を禁止しており、AIのロボットがアカウントを巡って監視をしています。

人間かロボットかを判断するために、「いいね」の回数や「フォロー」の回数などに制限をかけています。

もしかしたら、こちらの記事を読んでいる方の中でも規制に引っかかったことがある方もいらっしゃるのではないでしょうか?

最初から「アカウント凍結」になることはなく、1日〜2日間、「いいねやフォローができない」ような規制がかかります。

それでも、何度も規制にかかり続けると、アカウント凍結のリスクが高まります。

「特定のハッシュタグ」を自動でいいねするツールを作成する

今回はPythonで特定ハッシュタグを検索し、「最近の投稿」からいいねを順に実施していくというコードを実装していきます。

]

PythonのSeleniumというWebブラウザを自動で制御することができる機能を活用して、下記のような動作を行います。

  • 自動でChromeのブラウザを立ち上げ

  • Instagramのアカウントにログイン

  • ハッシュタグを検索

  • 最近の投稿へ移動

  • いいねを実施

  • 次の投稿へ移動

  • 以下、繰り返し

最初は、もしもの場合に備えて、凍結されても困らないような捨てアカウントを活用することをオススメします。

プログラミングの環境を事前に準備

まずはPythonをインストール

テキストでは、少し長くなってしまうのと、既に分かりやすいYouTube動画が多く出ていますので、今回は私が参考にした動画を紹介します。

こちらの手順に沿ってまずはPCにPythonを設定してみてください。

Visual Studio Codeのインストール

Pythonの設定が完了したら、次はPythonを実行するツールを導入します。

今回は、Visual Studio Code(以下、VS Code)をインストールしてみましょう。

参考動画 https://www.youtube.com/watch?v=z-H2bCnULFk

ここまでインストールが完了すれば、環境構築はOKです。

これが30万円分の価値があるコードの全て

なぜ30万円分の価値があるかというと、有料版でのいいねツールの場合、月額が2~3万円が相場です。仮に1年間はこのコードで実行し続けることができると仮定した場合、約30万円分の価値があるかと推定しています。

コピペで実行が可能

私の使っているmacでは2022年時点で問題なく稼働することが確認できています。

基本はコピペで、Instagramのログイン用のIDとPASSだけ利用したアカウント(捨てアカウントを推奨)のものに書き換えてもらうだけでOKです。

from asyncio import sleep
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions
from selenium.webdriver.common.by import By
from selenium.common.exceptions import TimeoutException ,NoSuchElementException
import time
import random

likecount = 0
alreadylickecount = 0


#Instagramへログイン
def login(username, password, driver):
    # Instagramのログインページを指定
    driver.get('https://www.instagram.com/accounts/login/?source=auth_switcher')
    time.sleep(1)

    
    # メアドとパスワードを入力
    driver.find_element_by_name('username').send_keys(username)
    time.sleep(1)
    driver.find_element_by_name('password').send_keys(password)
    time.sleep(1)

    # ログインボタンを押す
    driver.find_element_by_class_name('L3NKy').click()
    time.sleep(1)
    


#ハッシュタグの検索
def tagsearch(tag, driver):
    # tagで渡ってきたハッシュタグのページにアクセス

    tagurl = 'https://www.instagram.com/explore/tags/'
    try:
        driver.get(tagurl + tag)
    except TimeoutException:
        time.sleep(10)
        driver.get(tagurl + tag)
    else:
        return True

    time.sleep(5)


def move_recent(target,driver):
    # 最新の投稿へ移動
    time.sleep(5)
    target = driver.find_elements_by_class_name('_9AhH0')[10]
    actions = ActionChains(driver)
    actions.move_to_element(target)
    actions.perform()
    time.sleep(1)

    #最近の投稿の一枚目をクリック
    driver.find_elements_by_class_name('_9AhH0')[9].click()


#既にいいねを押しているかの判定
def alreadypresslike(driver):
    label = driver.get_attribute('aria-label')
    if label == '「いいね!」を取り消す':
        return True
    else :
        return False

def waitElementClickable(elementLocator, seconds):
	wait = WebDriverWait(driver, 10)
	element = wait.until(expected_conditions.element_to_be_clickable(elementLocator))
	time.sleep(seconds)
	return element

def nice(interval, driver): 
    # いいね実行
    global likecount_tag
    global alreadylickecount_tag
    global likecount
    global alreadylickecount
    likeButtonClassName = 'fr66n'
    elementLikeButton = waitElementClickable((By.CLASS_NAME,likeButtonClassName) , 2)
    element = elementLikeButton.find_element_by_xpath('./button/div/span')
    element1 = element.find_element_by_class_name('_8-yf5 ')



    if alreadypresslike(element1):
        time.sleep(1)
        alreadylickecount = alreadylickecount + 1
        print("いいね済みの投稿:"+str(alreadylickecount)+ "個目")
        
        

    else:
        time.sleep(random.randint(int(interval*0.9),int(interval*1.1)))
        elementLikeButton.click()
        time.sleep(1)
        likecount = likecount + 1
        print("いいね実施"+str(likecount)+ "個目")
        

def pushnice(nice_num, interval, driver):
    # 最近の投稿の1枚目をクリック
    global likecount
    global alreadylickecount

    move_recent(interval,  driver)
    time.sleep(10)


    for i in range(nice_num):
        # いいねを実行
        try:
            nice(interval, driver)
            time.sleep(5)

            # 次の投稿へ移動
            nextButtonClassName = driver.find_element_by_xpath("/html/body/div[6]/div[2]/div/div[2]/button").click()
            waitElementClickable((By.CLASS_NAME,nextButtonClassName) , 2)
            time.sleep(1)
        except TimeoutException:
            continue

        except IndexError:
            time.sleep(5)
            continue

        except NoSuchElementException:
            time.sleep(5)
            nextButtonClassName = driver.find_element_by_xpath("/html/body/div[6]/div[2]/div/div[2]/button").click()
            waitElementClickable((By.CLASS_NAME,nextButtonClassName) , 2)


        else:
            return True


    print("いいね完了")
    print("既にいいねだったものは" + str(alreadylickecount) + "個です" )
    print(f"新しくいいねしたものは{likecount}個です" )
    

        

def loop_pushnice(tag, interval, driver):
    global likecount
    global alreadylickecount
    
    tagsearch(tag, driver)
    pushnice(nice_num, interval, driver)
        

    print("autolikeの終了")
    time.sleep(1)
    driver.close()



if __name__ == '__main__':
    username = 'アカウントのusername'
    password = 'アカウントのパスワード'

    # いいねの動きに対するパラメータ
    
    nice_max = 100 # いいね最大回数[回]
    interval = 30  # いいねの間隔[秒]
    

    # 検索するハッシュタグを指定する。
    tag = '検索したいハッシュタグ(例:料理)'

    # いいねの回数(いいね最大回数をタグ数に平等に分ける)
    nice_num = nice_max

    # Macの場合のChromeDriverの指定
    driver = webdriver.Chrome()

    # windowsの場合のChromeDriverの指定
    # driver = webdriver.Chrome('chromedriver.exe')
    
    time.sleep(1)

    #ログイン
    login(username, password, driver)
    time.sleep(2)

    
    #いいね実行
    loop_pushnice(tag, interval, driver)
    time.sleep(2)

コード実行の準備①:コードの貼り付け

  1. Visual Studio Codeを開き、新しいファイルを作成

  2. 使用する言語で「Python」を指定する ※ファイル名の末尾が「.py」となっているか確認

  3. 作成したファイルに先ほどのコードをコピペする

コード実行の準備②:Seleniumのインストール

Visual Studio Codeで「ターミナル」から「新しいターミナル」を選択する

ターミナル上で下記コードをコピペして「Enter」を押す

pip install selenium

参考ページ:https://self-development.info/%E5%88%9D%E5%BF%83%E8%80%85%E3%81%A7%E3%82%82%E7%B0%A1%E5%8D%98%E3%81%AB%E3%81%A7%E3%81%8D%E3%82%8Bselenium%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%80%90python%E3%80%91/

コード実行の準備③:ChromeDriverのインストール

macの場合

ターミナル上で下記コードをコピペして「Enter」を押す

brew install chromedriver

参考ページ:https://doku-pro.com/chromedriver-mac-windows/

windowsの場合

下記参考ページにしたがってインストール

https://doku-pro.com/chromedriver-mac-windows/

コード実行の準備④:自分のアカウントのID・PASSへ変更

コードの後半部分の箇所を自分用にカスタマイズします。

  1. ‘アカウントのusername’の箇所にInstagramのアカウントのusernameを入力します。
    • ※@はなくて大丈夫です。

  2. ‘アカウントのパスワード’の箇所にInstagramのパスワードを入力します。

  3. nice_maxがいいねを実行する回数です。凍結リスクが高まるため、一度に実行する回数は200-300以下にしておきましょう。

  4. intervalはいいねを実行する間の時間です。短すぎると凍結リスクが高まるため、時間に余裕があれば、30-40秒程度で指定しておくと良いでしょう。

  5. tagはいいねをしたいハッシュタグを入力します。「#」は入力せずに、その後の検索キーワードを入力します。現状では1つのキーワードだけしか指定できない仕様にしています。

if __name__ == '__main__':
    username = 'アカウントのusername'
    password = 'アカウントのパスワード'

    # いいねの動きに対するパラメータ
    
    nice_max = 100 # いいね最大回数[回]
    interval = 30  # いいねの間隔[秒]
    

    # 検索するハッシュタグを指定する。
    tag = '検索したいハッシュタグ(例:料理)'

コード実行の準備⑤:自分のOSに合わせてChromeDriverのパスを変更

利用しているOSに合わせてChromeDriver (Googleのブラウザを利用するためのツール)のパス(PCのどこにインストールして保存したのかなどの情報)を変更する必要があります。

 # Macの場合のChromeDriverの指定
    driver = webdriver.Chrome()

    # windowsの場合のChromeDriverの指定
    # driver = webdriver.Chrome('chromedriver.exe')

現状では、macで動作がするように設定をしていますが、もしWindowsで実行したい場合は、下記のように、パスを指定して実行する必要があります。

webdriver.Chrome('chromedriver.exe')

コードを実行してみよう

macで初めてSeleniumを実行しようとすると、下記のエラー文言が表示されます。

「開発元を検証できないため開けません」

その場合、「システム環境設定」からセキュリティとプライバシー」を選択肢、「許可」を押せば解消することができます。

参考ページ:https://qiita.com/apukasukabian/items/77832dd42e85ab7aa568

やっぱり難しいからやめたいと思った方は

有料ツールで無料トライアルをするという選択肢もある

「やっぱりPythonで自分で作るのは大変だった」という方は、有料版でのツールの無料トライアルを活用してみるというのもアリかもしれません。

調べたところ、無料期間があるツールでは、無料期間がすぎるとクレジットカードから引き落とされるような仕様のところがあるようですが、海外ではなく、日本のツールなので、多少は安心感があります。

有料ツール一覧

ツール月額自動いいね
MDS27,800円×
Influxer19,800円
ReF23,000円×
DIGITAL PANDA16,480円
Insta Try35,000円

※自動いいねが「×」のツールは人間が手動でいいね・フォローを実行

まとめ

いかがでしたでしょうか?

今回はInstagramで「自動いいね」を完全無料で作成する方法について紹介しました。

改めて概要をまとめます。

  • 無料の自動いいねツールはない!?

  • Pythonを活用した自動いいねツールとは?

  • プログラミングの環境を事前に準備

  • これが30万円分の価値があるコードの全て

Instagramで「いいね・フォローを含む」自動ツールの利用は規約で禁止されています。AIの自動BOTが監視をしており、ツールを利用することはアカウント凍結の可能性を高めます。

そのため、活用の際は、全て自己責任でのご利用となりますので、注意してください。

他、インスタグラムを活用したチャットボットなども紹介していますので、もしよければ参考にしてみてください。

【最新レポート】チャットボットを活用した最新のInstagramマーケティング施策とは?

また、普段使っているYouTubeの広告を無料でブロックする方法を【知っている?】YouTubeは無料の拡張ツールで広告を消すことができるで解説していますので、参考にしてみてください。

[DISPLAY_ULTIMATE_SOCIAL_ICONS]

Instagramカテゴリの最新記事