【改修中】【質問・返金OK】インスタで自動リポストするソースコードを公開
インスタグラムの仕様変更に伴い、本noteのソースコードは現在、改修中です。本noteのご購入はお控えください。
更新履歴
2022/3/25:インスタの仕様変更に対応してソースコードを一部修正
2022/6/21:インスタの仕様変更に対応してソースコードを一部修正
Pythonでインスタで自動リポストする方法
本ノートでは、次の記事で紹介している「【アプリ不要】インスタで自動リポストするやり方を公開 -Pythonを利用-」において、実際のコードの部分を掲載します。
【アプリ不要】インスタで自動リポストするやり方を公開 -Pythonを利用-
まずは、この記事で読んでいただき、もしコードも見てみたいという方は、本ノートを購入いただけたらと思います。
実際の動作イメージは次の通りになります。
実際はこんな感じのポストになります。
リポスト元のユーザーにメンションし、ハッシュタグもリポストされています。
インスタを自動リポストで運用してみた結果(2021年4月4日時点)
インスタを自動投稿・リポストなどでプログラミングの力を利用して運用してみました。
その結果、アカウント新設から約3ヶ月で、1,000人の方からフォローいただきました。(フォロバなし)
すべての投稿は、本記事の自動投稿/リポストのプログラムを利用していました。
Pythonでインスタで自動リポストするソースコード・仕様
自動リポストするためのファイルは次の2つとなります。
※本ソースコードは、Windowsパソコン用のものになります
・insta_auto_repost.py
自動リポストの処理を記載するファイル
・insta_auto_script.py
自動リポストに必要な機能を搭載したクラス、メソッドを記載するファイル
※上の2つのファイルは同一フォルダに格納ください。
仕様としては、次の通りとなります。
・リポストする投稿が複数画像の場合、最初の画像のみをリポストする。
・本noteのソースコードでは、リポストする投稿は、画像のみ対応(動画の投稿はリポストできない)
僕の実行環境は、次の通りです。
・Windows 10 Pro バージョン1909
・Chrome バージョン 87.0.4280.88
・Python 3.7.3
・Selenium 3.141.0
・pywinauto 0.6.8
・beautifulsoup 4.9.3
・Chromdriverをダウンロード済み
購入者特典:質問対応・返金保証あり
購入された方は、上のファイルについての質問も受け付けます。
もし分からないことがあれば、ブログの問い合わせページまでご連絡ください。僕がわかる範囲になりますが、お答えいたします。
また、本noteは返金保証ありです。コードがうまく動かない等あってもご安心ください。
ただし、noteのルール上、返金申請は、購入から24時間以内になりますので、ご注意ください。本noteを購入後、24時間以内にお試しいただくことを奨励します。
以下では、「insta_auto_script.py」のコードの一部を記載しています。
from selenium import webdriver
from selenium.common.exceptions import WebDriverException
from selenium.webdriver.common.action_chains import ActionChains
import datetime
import time
import pywinauto
import os #フォルダを作成
import wget #画像を保存
import bs4
def now_time():
'''
現在の時間を表示する関数
'''
dt_now = datetime.datetime.now()
return dt_now.strftime('%m/%d %H:%M')+' '
class Instagram():
'''
インスタグラムの自動処理をするクラス
次の機能がある
<共通機能>
・ログイン:login
・処理を終了:quit
<投稿の各種情報を保存>
・ユーザー名を取得
<投稿する>
・マイページへ移動する:to_my_page
・投稿する:post_pic
'''
def __init__(self, username, password):
mobile_emulation = { "deviceName": "Galaxy S5" }
options = webdriver.ChromeOptions()
options.add_experimental_option("mobileEmulation", mobile_emulation)
#文字列リテラル中の\はエスケープに使われる。
#chromedriver.exeの格納先を指定する
#例 r"C:\Users\username\Python\chromedriver.exe"
self.driver = webdriver.Chrome(executable_path = r"{chromedriver.exeの格納先を指定}",
options=options)
self.username = username
self.password = password
def login(self):
'''
インスタグラムにアクセスして、ログインする関数
引数、戻り値なし
'''
self.driver.get('https://www.instagram.com/accounts/login/?source=auth_switcher')
print(now_time()+'instagramにアクセスしました')
time.sleep(1)
#メアドと、パスワードを入力
self.driver.find_element_by_name('username').send_keys(self.username)
time.sleep(1)
self.driver.find_element_by_name('password').send_keys(self.password)
time.sleep(1)
#ログインボタンを押す
self.driver.find_elements_by_xpath('//button[@type="submit"]')[0].click()
time.sleep(3)
print(now_time()+'instagramにログインしました')
time.sleep(1)
続きは、以下の通りになります。
ここから先は
¥ 1,980
この記事が気に入ったらサポートをしてみませんか?