- Notifications
You must be signed in to change notification settings - Fork143
mifi/instauto
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
instauto is an Instagram automation/bot library (API) written in modern, clean javascript using Google's Puppeteer. Goal is to be very easy to set up, use, and extend, and obey instagram's limits. Heavily inspired byInstaPy, but I thought it was way too heavy and hard to setup.
There is also a GUI application for those who don't want to code:SimpleInstaBot
First installNode.js 8 or newer.
- On MacOS, it's recommended to usehomebrew:
brew install node
- On MacOS, it's recommended to usehomebrew:
Create a new directory with a file likeexample.js
Adjust your
example.js
to your needs. If you want to see how it would work without doing any invasive actions, use thedryRun: true
option. Toggleheadless
to see it in action.Open a terminal in the directory
Run
npm i -g yarn
Run
yarn add puppeteer instauto
Run
node example
You can run this code for example once every day using cron or pm2 or similar
Seeindex.js for available options.
Follow the followers of some particular users. (e.g. celebrities.) Parameters like max/min ratio for followers/following can be set.
Unfollow users that don't follow us back. Will not unfollow any users that we recently followed.
Unfollow auto followed users (also those following us back) after a certain number of days.
The code automatically prevents breaching 100 follow/unfollows per hour or 700 per 24hr, to prevent bans. This can be configured.
Seeexample.js for example of features
- Run this on a machine with a non-cloud IP to avoid being banned
- If it doesn't work, make sure your instagram language is set to english
Because puppeteer chrome binaries are not provided for RPi, you need to first install chromium using apt.
Then replace your puppeteer launch code:
browser=awaitpuppeteer.launch({executablePath:'/usr/bin/chromium-browser',headless:true,args:['--disable-features=VizDisplayCompositor'],});
See also:
Also you might want to install the more lightweight packagepuppeteer-core
instead ofpuppeteer
.
First installpm2. (npm i -g pm2
) Then copyinstabot.yml into the same dir asexample.js
and run:
pm2 start instabot.ymlpm2 savepm2 startup
Now it will run automatically on reboot! 🙌
We've added a Docker support for instauto! In theenvironment section of yourdocker-compose.yml
you need to specify your configuration for login and performance. If you want to raise another container, just copy the service with diff name and run the compose. You'll need to specify different ports.
docker-compose --profile instauto up -d
This project is maintained by me alone. The project will always remain free and open source, but if it's useful for you, consider supporting me. :) It will give me extra motivation to improve it.
- Icons made bysmalllikeart &Freepik fromwww.flaticon.com
- Docker compose byhttps://github.com/maxxxdj
Made with ❤️ in 🇳🇴
Follow me onGitHub,YouTube,IG,Twitter for more awesome content!
About
Instagram bot / automation library written in Javascript for Node.js