A simple library for managing an Instagram bot as a web application.
Project description
InstaBot
InstaBot is a Python library that provides some automation for simple tasks on Instagram like following accounts and sending DMs on Instagram using Selenium. Please note that this library is not associated with Instagram or Meta.
Installation
You can install the library from the GitHub repository or by using pip:
pip install InstaWebBot
Usage
IMPORTANT (version older than 0.3.0): The driver file for Selenium must be located in the current working directory of your project. You can download the driver here. Please provide the driver name if you are not using the recommended geckodriver.
Initialize the bot by passing in your Instagram username and password as parameters:
from InstaWebBot import InstaBot
bot = InstaBot('your_username', 'your_password')
# A bot login is required before any other action will be executed.
bot.login()
Here is an example with some optional arguments (using their default value if default exists):
from InstaWebBot import InstaBot
bot = InstaBot('your_username', 'your_password',
driver="geckodriver",
output=False,
time=2.5)
To log in to Instagram with the given username and password use
bot.login()
Once you have created an instance of the InstaBot class, you can use its methods to automate some simple tasks on Instagram.
Functions
Search for a username by using
bot.search(query)
After that you can perform various actions on a user profile:
bot.follow()
bot.unfollow()
bot.send_dm(message)
bot.get_followers()
bot.get_picture(number)
bot.get_likes()
bot.get_liked_by()
bot.like_picture()
bot.write_comment(message)
It is also possible to get data from the profile once it has been searched with bot.search(query)
:
user_data = bot.get_data('instagram')
# user_data contains various counters as well as a link to the profile picture, homepage and bio
print(f"Follower count of @instagram: {user_data['followers']}")
This is a small example program to get 50 followers of a given profile (50 is the maximum amount, because Instagram limits the visibility of followers/following lists):
from InstaWebBot import InstaBot
bot = InstaBot('username', 'password')
bot.login()
bot.search('instagram')
followers = bot.get_followers()
for follower in followers:
print(follower)
bot.close()
Future functionality:
- Get follower and following counter
- Get post counter
- Allow commenting on posts
- Send direct messages to user
- Like different images than just the first image
- Download images
- Update
.get_data()
function - Improve general usability
LICENSE
InstaBot is licensed under the GNU General Public License v2.0.
Help & Contribution
If you find an error please feel free to open an issue here.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for InstaWebBot-0.3.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08c44672d8385117c032ebbcb8a88c34c48d109d51326516c73f0625ea917a53 |
|
MD5 | 645c2e1060abfeb2a0f7bdb4be25e968 |
|
BLAKE2b-256 | 6e538e24f8a34c38aba26b4f5524e1206b32c9dd4abefd3a6bd10c9d393f9ec2 |