Skip to content

⚡ Powerful, customizable and easy to use Instagram dm bot. With TUI and Electron.js GUI! Using Selenium webdriver and Yaml configuration files. (WIP)

License

Notifications You must be signed in to change notification settings

hbollon/IGopher

Repository files navigation

IGopher : (WIP) Golang smart bot for Instagram DM automation

IGopher logo

Build CI Go Report Card License: MIT Documentation link PkgGoDev

⚡ Powerful, customizable and easy to use Instagram dm bot. With TUI and GUI! Using Selenium webdriver and Yaml configuration files.


Disclaimer: This is a research project. I am in no way responsible for the use you made of this tool. In addition, I am not responsible for any sanctions and/or limitations imposed on your account after using this bot.


Table of Contents

Introduction

IGopher is a new Instagram automation tool that aims to simplify the deployment of such tools and make their use more pleasant thanks to a TUI (terminal User Interface) as well as a GUI (Graphical User Interface) arriving very soon.

Automatic user fetching and message sending!

The bot configuration is very easy thanks to the different configuration menus in the TUI. Parameters are managed and saved in Yaml files easy to edit manually!

Easily configurable and easy to use thanks to his TUI !

Requirements

Features

  • Selenium webdriver engine 🌠
  • Automatic dependencies downloading and installation 🌠
  • Automated IG connection & message sending 🌠
  • Users scrapping from ig user followers 🌠
  • Scheduler 🌠
  • Quotas & user blacklist modules 🌠
  • Human writing simulation 🌠
  • Fully and easily customizable through Yaml files or with TUI 🌠
  • TUI (Terminal User Interface) 🌠
  • Many more to come ! 🥳

Check this Project to see all planned features for this tool! Feel free to suggest additional features to implement! 🥳

Getting Started

From release

  1. Download and install Java and Java JDK (needed for Selenium webdriver) and add them to your path (on Windows)
  2. Download lastest release executable for your operating system
  3. Move the executable to a dedicated folder (it will create folders/files)
  4. Launch it:
  • On Windows, open a Windows Terminal in the folder (or powershell/cmd but the experience quality can be lower) and execute it: ./tui.exe or just drag and drop tui.exe in your command prompt
  • On Linux or MacOS, open you favorite shell in the folder, allow it to be executed with chmod +x ./tui and launch it: ./tui
  1. Configure the bot with your Instagram credentials and set your desired scrapping and autodm settings. To do that, you can use the TUI settings screen or directly edit the config.yaml file.
  2. You're ready! Just hit the "Launch" option in the TUI main menu 🚀

From sources

  1. Download and install Java and Java JDK (needed for Selenium webdriver) and add them to your path (on Windows)
  2. Install Go (v1.13+) on your system
  3. Download lastest release source archive or clone the master branch
  4. Launch it with this command: go run ./cmd/igopher/tui
  5. Configure the bot with your Instagram credentials and set your desired scrapping and autodm settings. To do that, you can use the TUI settings screen or directly edit the config.yaml file.
  6. You're ready! Just hit the "Launch" option in the TUI main menu 🚀

Flags

IGopher have a flags system for debuging or to enable system feature. You can activate them by adding them after the executable call, for exemple to activate headless mode: ./tui --headless

There is the list of all available flags:

--debug
      Display debug and selenium output
--force-download
      Force redownload of all dependencies even if exists
--headless
      Run WebDriver with frame buffer
--ignore-dependencies
      Skip dependencies management
--loglevel string
      Log level threshold (default "info")
--port int
      Specify custom communication port (default 8080)

You can recover this list by adding --help flag.

🤝 Contributing

Contributions are greatly appreciated!

  1. Fork the project
  2. Create your feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some amazing stuff')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Create a new Pull Request

Issues and feature requests are welcome! Feel free to check issues page.

Author

👤 Hugo Bollon

Show your support

Give a ⭐️ if this project helped you!

📝 License

This project is under MIT license.