A Python-based automation tool for purchasing products from Topps.com with a user-friendly GUI interface.
- GUI Interface: Easy-to-use Tkinter-based graphical interface
- Automated Purchase Flow: Automatically adds products to cart and proceeds to checkout
- Persistent Browser Profile: Maintains login sessions and preferences
- Undetected Chrome: Uses undetected-chromedriver to avoid bot detection
- Real-time Status Updates: Live logging of bot activities
- Manual Override: Allows manual intervention for captchas and login
- Python 3.7+
- Chrome browser installed
- Internet connection
-
Clone the repository:
git clone https://github.com/pythonicshariful/purchase-atomation-topps.com cd purchase-atomation-topps.com -
Install required dependencies:
pip install undetected-chromedriver selenium tkinter
Or create a requirements.txt file:
pip install -r requirements.txt
-
Run the application:
python main.py
-
Configure the bot:
- Enter the product URL from Topps.com
- Set the desired quantity
- Click "Start Bot"
-
Manual setup (if required):
- Complete any captcha challenges
- Log in to your Topps account if not already logged in
- The bot will wait for you to complete these steps
-
Automated process:
- Bot navigates to the product page
- Sets the specified quantity
- Adds the product to cart
- Proceeds to checkout
- Attempts to complete the purchase
The bot uses a persistent Chrome profile stored in the chrome_profile directory, which:
- Maintains login sessions
- Saves browser preferences
- Reduces the need for repeated manual setup
undetected-chromedriver: Stealth Chrome automationselenium: Web browser automationtkinter: GUI framework (included with Python)
- ToppsBotGUI: Main GUI application class
- create_driver(): Chrome driver setup with persistent profile
- run_bot(): Core automation logic
- Uses undetected Chrome driver to avoid detection
- Persistent user data directory
- Disabled automation indicators
- Remote debugging enabled
- Legal Compliance: Ensure you comply with Topps.com's terms of service
- Rate Limiting: The bot includes random delays to avoid overwhelming the server
- Manual Intervention: You may need to complete captchas or login manually
- Account Safety: Use responsibly to avoid account suspension
- Random delays between actions (3-5 seconds)
- Error handling for timeouts and missing elements
- Graceful shutdown capability
- Status logging for monitoring
- Chrome not found: Ensure Chrome browser is installed
- Element not found: Website structure may have changed
- Timeout errors: Check internet connection and website availability
- Login required: Complete manual login in the browser window
❌ Timeout: Element not found within expected time❌ Error: General automation error✅ Success: Operation completed successfully
This project is for educational purposes only. Please use responsibly and in accordance with the website's terms of service.
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This tool is provided for educational and research purposes only. Users are responsible for ensuring their use complies with all applicable laws and website terms of service. The authors are not responsible for any misuse or consequences of using this software.