July 14, 2021
A multifunctionality automated instagram bot that can mass text users, receive and read a message and store it somewhere with user details and much more. Powered by Selenium.
$ pip install pipenv
$ pipenv install
$ pipenv shell
Inside the virtual environment, type:
$ flask run
and open the URL.
- Login-out using credentials
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.logout()
- Direct Message anyone
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.dm('user','Hi there')
bot.logout()
- Follow another user
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.follow_users(['user1','user2'])
bot.logout()
- Like a number of posts by a user/hashtag
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.like_by_keyword(keyword, numOfPosts)
bot.logout()
- Create a group and direct message in it
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.group_dm(['user1','user2', 'user3'],'Final Testing')
bot.logout()
- Direct Message multiple users
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.multiple_dm(['user1','user2', 'user3'],'Final Testing')
bot.logout()
- Direct Message multiple users from a csv file
from BOT import Bot
bot = Bot()
bot.login(username, password)
# if csv file doesn't contains message column
bot.multiple_dm_from_csv('path to csv file','general message')
# else
bot.multiple_dm_from_csv('path to csv file')
bot.logout()
- Direct Message multiple users from a db
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.multiple_dm_from_db(general_message)
bot.logout()
- Direct Message to all Followers
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.multiple_dm_followers(general_message)
bot.logout()
- Retrieve the latest message from multiple user
UPDATE THE IMAGES DIRECTORY WITH SCREENSHOTS TAKEN FROM YOUR COMPUTER
UPDATE THE DATABASE CREDENTIALS IN db_credentials.py FILE
For further reference watch this video: https://www.youtube.com/watch?v=XI_GyOnw3M0
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.retrieve_messages([users])
bot.logout()
- Retrieve the latest message from multiple user in a csv file
UPDATE THE IMAGES DIRECTORY WITH SCREENSHOTS TAKEN FROM YOUR COMPUTER
UPDATE THE DATABASE CREDENTIALS IN db_credentials.py FILE
For further reference watch this video: https://www.youtube.com/watch?v=XI_GyOnw3M0
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.retrieve_messages_from_csv('path to csv file')
bot.logout()
- Retrieve the latest message from users from our inbox
UPDATE THE IMAGES DIRECTORY WITH SCREENSHOTS TAKEN FROM YOUR COMPUTER
UPDATE THE DATABASE CREDENTIALS IN db_credentials.py FILE
For further reference watch this video: https://www.youtube.com/watch?v=XI_GyOnw3M0
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.retrieve_messages_from_inbox(tolerance = 2)
bot.logout()
- Download posts by a keyword
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.download_pics(keyword)
bot.logout()
- Share latest post according to preferred category (as in replied message):
from BOT import Bot
bot = Bot()
bot.login(username, password)
bot.share_latest_post()
bot.logout()
- Login into Instagram: (Achieved)
from __login__ import Login Login(driver, <username>, <password>)
- Texting to a Single User: (Achieved)
from __dm__ import Dm(driver, <user>, <message>)
- Following Users: (Achieved)
from __follow_users__ import Follow_users Follow_users(driver, ['user1','user2'])
- Retrieving messages from single/multiple user(s): (Achieved)
UPDATE THE IMAGES DIRECTORY WITH SCREENSHOTS TAKEN FROM YOUR COMPUTER
UPDATE THE DATABASE CREDENTIALS IN db_credentials.py FILE
For further reference watch this video: https://www.youtube.com/watch?v=XI_GyOnw3M0
from __retrieve_messages__ import Retrieve_messages Retrieve_messages(driver, [users])
- Retrieving messages from single/multiple user(s) with names in a csv file: (Achieved)
UPDATE THE IMAGES DIRECTORY WITH SCREENSHOTS TAKEN FROM YOUR COMPUTER
UPDATE THE DATABASE CREDENTIALS IN db_credentials.py FILE
For further reference watch this video: https://www.youtube.com/watch?v=XI_GyOnw3M0
from __retrieve_messages_from_csv__ import Retrieve_messages_from_csv Retrieve_messages_from_csv(driver, 'path to csv file')
- Retrieving messages from single/multiple user(s) from inbox: (Achieved)
UPDATE THE IMAGES DIRECTORY WITH SCREENSHOTS TAKEN FROM YOUR COMPUTER
UPDATE THE DATABASE CREDENTIALS IN db_credentials.py FILE
For further reference watch this video: https://www.youtube.com/watch?v=XI_GyOnw3M0
from __retrieve_messages_from_inbox__ import Retrieve_messages_from_inbox Retrieve_messages_from_inbox(tolerance = 1)
- Texting to Multiple Users: (Achieved)
from __multiple_dm__ import Multiple_dm Multiple_dm(driver, [users], <message>)
- Texting to Multiple Users from a csv file: (Achieved)
from __multiple_dm_from_csv__ import Multiple_dm_from_csv Multiple_dm_from_csv(driver, 'path to csv file', <general message (optional)>)
- Texting to Multiple Users from a Database: (Achieved)
from __multiple_dm_from_db__ import Multiple_dm_from_db Multiple_dm_from_db(driver, <general message (optional)>)
- Texting to all Followers: (Achieved)
from __multiple_dm_followers__ import Multiple_dm_followers Multiple_dm_followers(driver, <general message (optional)>)
- Creating Group and texting in it: (Achieved)
from __group_dm__ import Group_dm Group_dm(driver, [users], <message>)
- Downloading a number of posts with a keyword: (Achieved)
from __download_pics__ import Download_pics Download_pics(driver, <keyword>)
- Liking a number of posts of a user/hashtag: (Achieved)
from __like_by_keyword__ import Like_by_keyword Like_by_keyword(driver, <keyword>)
- Logging Out: (Achieved)
from __logout__ import Logout Logout(driver)
- GUI app: (On the way)
Platform: Python files. Virtual Environment using PIPENV.
Libraries: Selenium, Instabot, InstaPy, Time, Pyperclip, Pyautogui, OpenCv, os, wget, pymongo
Softwares: Windows Chromedriver, MongoDB
Low-Level Specs: Whole program is built in Object Oriented fashion and Modular structure is followed throughout.