【随時更新コード付】Pythonでinstagramを自動いいねする

AIを作って稼ぐ
ワタシナガタ

データサイエンス・機械学習・深層学習の研究者(修士)ですが、Pythonで開発したAIから得られる不労所得で生きてます。本サイトは【未経験でもAIを開発】を手助けします。

>>管理人プロフィール・理念はこちら<<

ワタシナガタをフォローする

どうも、データサイエンティストのワタシナガタです。

Instagramの自動化するコード自体はいろんなサイトに溢れてますが、実際に動かすと「動かんやんけ!」ってコードが多すぎてめっちゃ腹立ちますよね。

Pythonをある程度勉強したら、実際に動くコードを体験して、Pythonの便利さを実感しましょう。

その点に関していえば、「instagramのいいねの自動化」はコードも短く、実行もしやすいので、いい実践練習になると思います。

今回は、実際にinstagramのいいねを自動化するコードを書いたので、特別に無料公開します。

この記事のコードは、定期的に更新していくので、おそらくコピペだけで実行できるようになっているはずです。

もし「コードをコピーしてみたけど動かないよ」ってことがありましたら、Twitterまで連絡ください。

できるだけ早く修正できるようにします。

「この記事だけ読めば、instagramの自動化は完璧!!!」というレベルを目指しているので、逆に「このコード、ここを変えた方がもっとわかりやすいコードになるよ」っていう意見もありましたら、遠慮なくTwitterで教えていただけると嬉しいです。

Pythonでinstagramを自動いいねできるコード

早速コードを貼っていきます。

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from webdriver_manager.chrome import ChromeDriverManager
import urllib.parse
import time

#USER INFO
username = '' #インスタのIDを''の中に入れる
password = '' #インスタのパスワードを''の中に入れる

#params
tagName = 'followmeto' #好きなハッシュタグを書き換え
likedMax = 100 #likeのMAXを決める 
likedCounter = 0

#Webdriver
driver_path = ChromeDriverManager(path='/Users/nagatashoya/chromedriver').install()
browser = webdriver.Chrome(driver_path)

BASE_URL      = 'https://www.instagram.com/'
LOGIN_URL      = BASE_URL + 'accounts/login/?source=auth_switchwer'
TAG_SEARCH_URL = BASE_URL + 'explore/tags/{}/'

#selectors
NO_LIKE_FLAG = "/html/body/div[4]/div[2]/div/article/div[2]/section[1]/span[1]/button/svg[@aria-label='いいね!'']"
NOTICE_BUTTON = "//button[@class='aOOlW   HoLwm ']"
LIKE_BUTTON   = "/html/body/div[4]/div[2]/div/article/div[2]/section[1]/span[1]/button"

MEDIA_SELECTOR      = 'div._9AhH0'
NEXT_PAGER_SELECTOR = 'a.coreSpriteRightPaginationArrow'


if __name__ == '__main__':

    # ログイン画面にアクセス
    browser.get(LOGIN_URL)
    time.sleep(3)

    # ログイン情報を入力
    usernameField = browser.find_element_by_name('username')
    usernameField.send_keys(username)
    passwordField = browser.find_element_by_name('password')
    passwordField.send_keys(password)
    passwordField.send_keys(Keys.RETURN)
    time.sleep(3)

    # 通知ボタンを押下
    browser.find_element_by_xpath(NOTICE_BUTTON).click()
    time.sleep(3)

    # ハッシュタグを検索
    encodedTag = urllib.parse.quote(tagName)
    encodedURL = TAG_SEARCH_URL.format(encodedTag)
    print("encodedURL:{}".format(encodedURL))
    browser.get(encodedURL)
    time.sleep(3)

    # media click
    browser.implicitly_wait(15)
    browser.find_element_by_css_selector(MEDIA_SELECTOR).click()

    # likedMax分いくまでいいねする
    while likedCounter < likedMax:
        time.sleep(15)
        try:
            #browser.find_element_by_xpath(NO_LIKE_FLAG)
            browser.find_element_by_xpath(LIKE_BUTTON).click()
            likedCounter += 1
            print("liked {}".format(likedCounter))
        except:
            #エラーならパス
            print("pass")
            pass

        # 次の投稿へ
        try:
            browser.find_element_by_css_selector(NEXT_PAGER_SELECTOR).click()
        except:
            break
        print("count: {} likes".format(likedCounter))

コードの内容を理解できなくても大丈夫です、コピペだけで実行できるようにしていきます。

Pythonでinstagramを自動いいねする準備

パソコンにcrhomeのブラウザに入ってないならインストールしてください。

Pythonファイルとchromedriverをデスクトップに準備

まず、デスクトップに下の写真のようにフォルダとファイルを作ってください。

デスクトップに「instagram-bot」といるフォルダを作って、その中に「insta.py」と「chromedriver」というファイルを用意します。

「chromedriver」というファイルはこちらのサイトからダウンロードして解凍すると出てくるはずなので、それをファイルに入れてください。

今回のコードでは、画像の赤い部分のやつインストールすれば大丈夫なはずです。

多分インストールしようとすると数字が少し違うと思うけど、気にしなくで大丈夫です。

「insta.py」については、標準のテキストエディタで「insta.py」という名前のファイルに上のコードを貼り付けて保存すれば大丈夫です。

よくわからなかったら追記するので、Twitterで連絡してください。

コードの変更について

コードはほぼコピペでいいんですが、一部変えなければならないところがあるので、そこについて説明します。

#USER INFO
username = '' #インスタのIDを''の中に入れる
password = '' #インスタのパスワードを''の中に入れる

#params
tagName = 'followmeto' #好きなハッシュタグを書き換え
likedMax = 100 #likeのMAXを決める 
likedCounter = 0

usernameとpasswordの右側の”の間には自動化したいアカウントのIDとパスワードを入れてください。

tagNameの右側の”の間にはいいねしたいハッシュタグを入れてください。

デフォルトでは、「#followtome」が検索されます。

下の例では、usernameを’watashinagata’、passwordを’instagram’、ハッシュタグを’お肉’にした場合です。

#USER INFO
username = 'watashinagata' #インスタのIDを''の中に入れる
password = 'instagram' #インスタのパスワードを''の中に入れる

#params
tagName = 'お肉' #好きなハッシュタグを書き換え
likedMax = 100 #likeのMAXを決める 
likedCounter = 0

実行の仕方

Pythonの環境の構築法についてはできている前提で話します。

できていない方は、こちらの記事を参考にpythonの環境構築をお願いします。

「Google Colaboratoryの基本」じゃなくて、「Windows の環境構築」と「Mac の環境構築」を参考にしてください。

そんなに難しくないので、多分やればできます。

ちなみにリンク先は【2020年最新】データサイエンティスト完全初心者のための学習ロードマップ【基本無料】で紹介している、超オススメの無料学習サイトなのでそちらもチェックしてください。

環境構築が終わりましたら、Macのかたはターミナル、Windowsの方はコマンドプロンプトを起動して、下の動画のように打ち込んでください。

実際に打ち込むコードは下の二つです。

pip3 install selenium
pip3 install webdriver_manager

これが終わったらあと一息です。次は下の動画のように打ち込んでください。

そうしたらinstagramの自動いいねが始まるはずです。

Pythonでの自動化は少し勉強すれば誰でもできる

今回の記事では、誰でも実行できるくらい詳細に書いたつもりです。

もしわからないところがあれば、遠慮なくtwitter のDMかリプライで教えてください。

もし今回実行したコードの意味が知りたいなら、少しPython を勉強すれば理解できるレベルです。

Pythonを勉強すると、今流行りのデータサイエンティストとして働くことも可能です。

未経験からデータサイエンティストになる方法は【2020年最新】データサイエンティスト完全初心者のための学習ロードマップ【基本無料】にまとめました。

Pythonやプログラミングに少しでも興味が出たなら、学んでみることをお勧めします。