Skip to content

AdoreBot: The simple bot that automatically likes all posts, Reels, and Stories from any account you choose

License

Notifications You must be signed in to change notification settings

KamilSupera/AdoreBot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AdoreBot 🤖❤️

License: MIT Python 3.7+ GitHub

An Instagram automation bot that automatically likes posts, reels, and stories from a target account.

Built for educational purposes to demonstrate Instagram API automation and Python programming concepts.


⚠️ Important Legal Disclaimer

THIS TOOL VIOLATES INSTAGRAM'S TERMS OF SERVICE

Instagram explicitly prohibits automated actions and use of unofficial APIs. By using this bot, you are:

  • Breaking Instagram's Terms of Service
  • Using reverse-engineered private APIs
  • Engaging in activity Instagram considers inauthentic

Possible Consequences:

  • ⚠️ Temporary action blocks (hours to days)
  • ⚠️ Account restrictions or temporary bans
  • ⚠️ Permanent account suspension
  • ⚠️ IP-based blocking

Legal Status:

Sharing this code is legal - Similar tools exist on GitHub
⚠️ Using it violates a private company's TOS - Not a criminal offense
Not recommended for your main account - Use at your own risk

For educational purposes only. The author is not responsible for any consequences of using this software.


🚀 Features

Core Functionality

  • 🔐 Automatic authentication with session persistence
  • ❤️ Likes posts from target account (filtered by date)
  • 🎬 Likes reels from target account (filtered by date)
  • 📸 Likes stories from target account
  • 📅 Smart time filtering - Only likes content from TODAY
  • ⏭️ Skip already-liked content automatically

Safety & Performance

  • 🕐 Human-like delays (randomized 3-8 seconds)
  • 🛡️ Rate limiting protection
  • 🔄 Session management (no repeated logins)
  • 📊 Comprehensive logging with clickable Instagram URLs
  • Modular architecture - Separate handlers for posts/reels/stories
  • 🎯 Error handling with graceful recovery

Output & Monitoring

  • 📈 Detailed statistics by content type
  • 🔗 Clickable Instagram links in logs
  • 📝 Clean console output (no HTML/JSON spam)
  • 📄 File logging (bot.log) for debugging

📋 Requirements

  • Python 3.7+ (tested on 3.7-3.13)
  • Instagram account credentials
  • Stable internet connection
  • Modern operating system (macOS, Linux, Windows)

🛠️ Installation

1. Clone the Repository

git clone https://github.com/KamilSupera/AdoreBot.git
cd AdoreBot

2. Create Virtual Environment (Recommended)

# macOS/Linux
python3 -m venv venv
source venv/bin/activate

# Windows
python -m venv venv
venv\Scripts\activate

3. Install Dependencies

pip install -r requirements.txt

4. Configure Environment Variables

# Copy the example file
cp .env.example .env

# Edit with your credentials
nano .env  # or use any text editor

5. Set Your Credentials in .env

# Instagram Account Credentials
INSTAGRAM_USERNAME=your_username
INSTAGRAM_PASSWORD=your_password

# Target Account Settings
TARGET_USERNAME=account_to_like

# Bot Settings
MIN_DELAY=3
MAX_DELAY=8
MAX_POSTS=20
MAX_CLIPS=20

# Like Stories (true/false)
LIKE_STORIES=true

🎮 Usage

Run the Bot

python bot.py

What Happens:

  1. ✅ Loads configuration from .env
  2. 🔐 Logs into your Instagram account
  3. 📸 Fetches stories from target account (if enabled)
  4. 📄 Fetches posts from target account
  5. 🎬 Fetches reels from target account
  6. ❤️ Likes content posted TODAY only
  7. ⏭️ Skips already-liked or old content
  8. 📊 Displays summary statistics

Example Output

==================================================
Instagram Bot Started
==================================================
Your account: @your_username
Target account: @target_account
Today's date: 2025-11-10
Max to check: 20 posts, 20 reels
Stories: enabled
==================================================

Fetching user info for @target_account...
Stories summary: 3 liked, 2 already liked
Posts summary: 1 liked, 2 already liked, 17 skipped (old)
Reels summary: 0 liked, 1 already liked, 19 skipped (old)

==================================================
SUMMARY
==================================================
Total items found: 46
  - Stories: 6
  - Posts: 20
  - Reels: 20

Successfully liked: 4
  - Stories: 3
  - Posts: 1
  - Reels: 0

Already liked: 5
  - Stories: 2
  - Posts: 2
  - Reels: 1

Not from today: 36
  - Posts: 17
  - Reels: 19
==================================================
Bot finished!

⚙️ Configuration Options

Variable Description Default Required
INSTAGRAM_USERNAME Your Instagram username - ✅ Yes
INSTAGRAM_PASSWORD Your Instagram password - ✅ Yes
TARGET_USERNAME Account to like content from - ✅ Yes
MIN_DELAY Minimum delay between actions (seconds) 3 ❌ No
MAX_DELAY Maximum delay between actions (seconds) 8 ❌ No
MAX_POSTS Maximum number of posts to check 20 ❌ No
MAX_CLIPS Maximum number of reels to check 20 ❌ No
LIKE_STORIES Like user's stories (true/false) true ❌ No

🎯 How It Works

Time Filtering

The bot only likes content from TODAY (current UTC date):

  • ✅ Posts published today
  • ✅ Reels published today
  • ✅ Active stories (always current)
  • ❌ Older content is skipped

This creates realistic, natural engagement patterns!

Architecture

bot.py
├── login()              # Authenticate with Instagram
├── process_stories()    # Fetch and like stories
├── process_posts()      # Fetch and like posts (with date filter)
├── process_reels()      # Fetch and like reels (with date filter)
├── like_content()       # Unified method for liking any content
└── print_summary()      # Display comprehensive statistics

Each content type has its own handler for clean, modular code.


🔒 Security Best Practices

Credential Safety

  • NEVER commit your .env file to version control
  • .gitignore is pre-configured to exclude sensitive files
  • ✅ Session files (.json) are also gitignored
  • 💡 Consider using an app-specific password if you have 2FA enabled

Account Safety

  • 🔐 Use a secondary account - Don't risk your main account
  • Run sparingly - Once per day maximum
  • 📉 Start with low numbers - Test with MAX_POSTS=5 first
  • 🎭 Mix with manual use - Also use Instagram normally

🐛 Troubleshooting

Challenge Required Error

ERROR - Challenge required! Instagram needs verification.

Solution:

  1. Login to Instagram manually through the app/website
  2. Complete any security checks (CAPTCHA, email verification)
  3. Wait 2-4 hours before running the bot again

Rate Limited

ERROR - Rate limited! Please wait a few minutes...

Solution:

  1. Stop the bot immediately
  2. Wait at least 6-12 hours before trying again
  3. Increase delays: MIN_DELAY=5, MAX_DELAY=15
  4. Reduce volume: MAX_POSTS=10, MAX_CLIPS=10

Login Failed

ERROR - Login failed: Bad credentials

Solution:

  1. Double-check username and password in .env
  2. If you have 2FA, generate an app-specific password
  3. Try logging in manually first to verify credentials
  4. Check if your account has been temporarily locked

Session Expired

WARNING - Session expired, logging in again...

Solution:

  • This is normal behavior
  • The bot will automatically re-authenticate
  • If it persists, delete *_session.json files and restart

🎯 Best Practices

Minimizing Risk

  1. 🐢 Start slow - Use the bot sparingly at first (once per day max)
  2. ⏱️ Increase delays - Higher delays = less suspicious (MIN_DELAY=5, MAX_DELAY=15)
  3. 📉 Limit interactions - Don't like 100s of posts (MAX_POSTS=10-20)
  4. 🔀 Mix manual activity - Use Instagram normally between bot runs
  5. 👁️ Monitor logs - Check bot.log for warnings or issues
  6. 🏠 Use residential IP - Avoid VPNs or datacenter IPs
  7. ⏰ Vary timing - Don't run at the exact same time daily

Recommended Settings (Conservative)

MIN_DELAY=5          # Higher than default
MAX_DELAY=15         # Much higher delays
MAX_POSTS=10         # Fewer posts
MAX_CLIPS=10         # Fewer reels
LIKE_STORIES=true    # Stories are safer

Recommended Settings (Aggressive)

MIN_DELAY=3          # Default
MAX_DELAY=8          # Default
MAX_POSTS=50         # More posts
MAX_CLIPS=50         # More reels
LIKE_STORIES=true

⚠️ Higher risk of detection!


📝 Logging

The bot creates two types of logs:

Console Output

  • Real-time progress updates
  • Clean, formatted output
  • No HTML/JSON spam
  • Clickable Instagram URLs

File Log (bot.log)

  • Complete operation history
  • Detailed error messages
  • Timestamps for all actions
  • Useful for debugging

Check the log file if something goes wrong!


🏗️ Project Structure

AdoreBot/
├── bot.py              # Main bot script
├── requirements.txt    # Python dependencies
├── .env               # Configuration (create from .env.example)
├── .env.example       # Configuration template
├── .gitignore         # Git ignore rules
├── LICENSE            # MIT License
├── README.md          # This file
└── bot.log            # Generated log file (gitignored)

🤝 Contributing

Contributions are welcome! Here's how:

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

Contribution Ideas

  • Additional safety features
  • Support for more content types
  • Better error handling
  • UI improvements
  • Configuration presets

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

What This Means:

  • ✅ Free to use, modify, and distribute
  • ✅ Commercial use allowed
  • ✅ Private use allowed
  • ⚠️ No warranty provided
  • ⚠️ Author not liable for damages

Important: While the code is MIT licensed, using it violates Instagram's Terms of Service. The license protects the code itself, not your Instagram account.


⚖️ Legal Notice

This software is provided for educational purposes only.

The author:

  • ❌ Does NOT encourage violating Instagram's Terms of Service
  • ❌ Is NOT responsible for any account bans or restrictions
  • ❌ Is NOT responsible for any misuse of this software
  • ✅ Provides this as a learning resource for API automation

Users are solely responsible for their own actions and any consequences.

This tool demonstrates:

  • API interaction and authentication
  • Rate limiting and safety mechanisms
  • Clean Python architecture
  • Error handling best practices

Use responsibly and ethically.


🙏 Credits & Acknowledgments

Built With

  • instagrapi - Instagram Private API library
  • python-dotenv - Environment variable management
  • Python 3.7+ - Programming language

Inspired By

  • Various Instagram automation tools on GitHub
  • Community research on Instagram's private API
  • Best practices for ethical automation

Author

Kamil Supera


📚 Additional Resources


🌟 Star This Repository

If you find this project useful for learning, please consider giving it a star! ⭐

It helps others discover the project and motivates continued development.


Remember: Use responsibly, ethically, and at your own risk! 🎯

About

AdoreBot: The simple bot that automatically likes all posts, Reels, and Stories from any account you choose

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages