Instagram Bot (Library)
What it does
This library (npm module) provides api for include instagram-bot.js functions in your application. This bot helps you increase the engagement level of your Instagram profile through different social algorithms. Increase the likes on your photos and followers!
Features
- [✓] Easy to use
- [✓] Login
- [✓] 2FA (bad location)
- [✓] 2FA (sms pin enabled)
- [✓] Multi-Session
- [✓] Multi-Platform (Windows 10, Mac OSX, Linux, Raspberry PI 3)
- [✓] Error management feature (bad pin, bad password)
- [✓] Screenshot and Verbose logger
- [✓] Like Mode Classic: bot selects a random hashtag from a config list and likes 1 random photo, and can repeat this all time.
- [✓] Like Mode Realistic: bot selects a random hashtag from a config list and likes fast 10-12 photos, it sleeps 15-20min and repeats this all time. Sleeps at night.
- [✓] Like Mode Competitor Users: it selects an account, selects random followers, likes 10-12 photo and sleeps 15-20min. Sleeps at night.
- [✓] Like Mode Superlike: it selects random hashtag from a config list and likes 3 random photos of the same user.
- [✓] Comment Mode Classic: it selects random comments and random hashtags and writes comments under photos.
- [✓] Follow/Defollow Classic: follow 30 users, defollow first and rotate (in loop). This method is not detect from socialblade. ~1h | 300 follow-defollow/day.
Fast usage
- Run
npm install instagrambotlib
- Get config.js file for step 3, fill it properly and remove
.tpl
suffix. - On your code require library and run bot, example:
const config = require ("./config");
const Bot = require("instagrambotlib");
let bot = new Bot(config);
bot.start();
- If work add star ⭐ at this project ❤️
- If you want help me: donate on paypal or become a backer on patreon.
For advanced configuration see INSTALL.md.
2FA: SMS Pin
If you received sms or email pin edit loginpin.txt
and insert it on first line. Wait 50-60 seconds...
Tips: hide browser
Edit config.js
and switch chrome_headless
option to true
.
Check if work:
See images in ./logs/screenshot or disable chrome_headless
flag.
API
Method | Description |
---|---|
start() | run instagram-bot.js |
stop() | stop instagram-bot.js |
Bugs
[ERROR] login: The username you entered doesn't belong to an account. Please check your username and try again. (restart bot and retry...)
- Why happen? Instagram desktop is in overcapacity. Happen at 12-14 and 19-21 all days.
- Solution: Login in other time or Logout from your instagram app, and login again. Reboot bot and retry... Try and retry, and retry, and retry... Or stop bot and wait 2-3h...
Error: Protocol error (Page.captureScreenshot): Target closed.
- Why happen? macOS don't support correctly screenshot from puppeteer
- Solution: set
screenshot
onfalse
inconfig.js
This code is no longer valid. Please request a new one. (400) (/accounts/login/ajax/two_factor/)
- Why happen? Instagram bug at login
- Solution: disable at moment 2FA or try old version of chrome (edit
config.js
setexecutable_path
)
Desktop setup (GUI Version)
- Social Manager Tools GUI.
- Run application.
Docker setup
If you prefer to run this using Docker, an official container is available from the Docker Hub.
In order to run it, copy the config.js.tpl
file, configure it as you prefer, then use it through volume mapping,
like in this example:
docker run --restart=always --name=instagram-bot -d -v /path/to/config.js:/app/configs/config.js socialmanagertools/instagram-bot.js:amd64
AVAILABLE TAGS: amd64
(64bit), i386
(32bit),armv7
(Raspberry PI 2), armv8
(Raspberry PI 3)
WARNING: with docker is mandatory edit config.js
and set chrome_headless
on true
and set executable_path
to /usr/bin/chromium-browser
. Without this fix docker don't work.
Roadmap
See full roadmap (open task, todo and bugs) in project page.
Sorry for snake_case
I love 🐍 snake_case syntax sorry for this 😭 don't hate me.
Social Manager Tools
Social Manager Tools GUI
InstagramBot.js (LIB)
TwitterBot.js (LIB)
FacebookBot.js (LIB)
WordpressTelegramBot.js (LIB)
MediumTelegramBot.js (LIB)
License
GNU GENERAL PUBLIC LICENSE
Copyright (c) 2018 Patryk Rzucidło (PTKDev)