Complete guide for installing, using, and updating TBR Deal Finder via Python's pip package manager.
- Download Python: Visit python.org/downloads
- Version Required: Python 3.13 or higher
- Verify Installation:
python3 --version # Should show Python 3.13.x or higher
Ensure you have pip (comes with Python 3.13+):
pip3 --version
# or
pip --versionKeep your system Python clean:
# Create virtual environment
python3 -m venv tbr-env
# Activate virtual environment
# On macOS/Linux:
source tbr-env/bin/activate
# On Windows:
tbr-env\Scripts\activate
# Install in virtual environment
pip install tbr-deal-finder
# To deactivate later:
deactivatepip3 install tbr-deal-finderTest that installation worked:
tbr-deal-finder --helpYou should see the help message with available commands.
Before setup, export your reading lists. Details on that can be found in the Configuration section here
Run the interactive setup:
tbr-deal-finder setupYou'll be prompted to:
- CSV File Paths: Enter path(s) to your exported reading lists
- Locale Selection: Choose your country/region for deals
- Price Limits: Set maximum amount you want to spend
- Discount Threshold: Minimum discount percentage (e.g., 20%)
Configuration is saved automatically for future use.
# Initial setup or update configuration
tbr-deal-finder setup
# View current version
tbr-deal-finder --version
# Get help
tbr-deal-finder --help
tbr-deal-finder [command] --help# Find new deals since last check
tbr-deal-finder latest-deals
# Browse all currently active deals
tbr-deal-finder active-dealsIf you want the desktop interface:
# Launch graphical interface
tbr-deal-finder-guiShows deals discovered since your last run:
- Book title and author
- Retailer (Audible, Kindle, Chirp, Libro.fm)
- Original price vs Sale price
- Discount percentage
- Direct purchase link
Shows all currently available deals:
- Same information as latest deals
- Includes previously seen deals
- Great for browsing all options
# Complete workflow example
tbr-deal-finder setup # One-time configuration
tbr-deal-finder latest-deals # Check for new deals
tbr-deal-finder active-deals # Browse all available deals
# Update configuration
tbr-deal-finder setup # Add new CSV files or change settings
# Quick help
tbr-deal-finder --help # General help
tbr-deal-finder setup --help # Command-specific help# Quick check for new deals
tbr-deal-finder latest-deals- Best Time: Morning or evening routine
- Frequency: Daily for best deal coverage
- Output: Only shows new deals since last run
# See all active deals
tbr-deal-finder active-deals- Purpose: Comprehensive view of all current deals
- Best For: Weekend browsing when you have more time
- Planning: Great for planning weekly book purchases
# Update your reading lists
tbr-deal-finder setup- Update CSV Files: Upload fresh exports from reading apps
- Adjust Settings: Update price limits or discount thresholds
- Clean Library: Remove purchased books from tracking
# Add to crontab for daily 9 AM checks
0 9 * * * /usr/local/bin/tbr-deal-finder latest-deals
# Email results to yourself
0 9 * * * /usr/local/bin/tbr-deal-finder latest-deals | mail -s "Daily Book Deals" you@email.com# Save deals to a file
tbr-deal-finder latest-deals > today-deals.txt
# Append to running log
tbr-deal-finder latest-deals >> all-deals.log
# Filter and process output
tbr-deal-finder active-deals | grep "Audible" | head -5# See installed version
tbr-deal-finder --version
# Check what's installed
pip show tbr-deal-finder
# See if updates are available
pip list --outdated | grep tbr-deal-finder# Upgrade to latest version
pip3 install tbr-deal-finder --upgrade# Using pip directly
pip install tbr-deal-finder --upgrade
# Using python -m pip
python3 -m pip install tbr-deal-finder --upgrade
# For specific Python version
python3.13 -m pip install tbr-deal-finder --upgrade# Activate environment first
source tbr-env/bin/activate # macOS/Linux
# tbr-env\Scripts\activate # Windows
# Then upgrade
pip install tbr-deal-finder --upgrade
# Verify update
tbr-deal-finder --version# Force clean reinstall
pip uninstall tbr-deal-finder
pip install tbr-deal-finder
# Clear pip cache if needed
pip install --no-cache-dir --upgrade tbr-deal-finder
# Force reinstall with dependencies
pip install --force-reinstall tbr-deal-finderProblem: pip installed to directory not in PATH
Solutions:
# Option 1: Use full Python module path
python3 -m tbr_deal_finder.cli setup
python3 -m tbr_deal_finder.cli latest-deals
# Option 2: Add pip bin to PATH (add to ~/.bashrc or ~/.zshrc)
export PATH="$HOME/.local/bin:$PATH"
# Option 3: Use virtual environment (recommended)
python3 -m venv tbr-env
source tbr-env/bin/activate
pip install tbr-deal-finderSolutions:
# Option 1: Install for current user only
pip3 install --user tbr-deal-finder
# Option 2: Use virtual environment (recommended)
python3 -m venv tbr-env
source tbr-env/bin/activate
pip install tbr-deal-finder
# Option 3: Use sudo (not recommended)
sudo pip3 install tbr-deal-finder# Use specific Python version
python3.13 -m pip install tbr-deal-finder
python3.13 -m tbr_deal_finder.cli setup
# Check available Python versions
ls /usr/bin/python* # Linux/macOS
# or
py -0 # WindowsPossible causes and solutions:
- Check CSV format: Ensure titles and authors match book listings
- Adjust filters: Lower discount threshold or raise price limit
- Verify configuration: Run
tbr-deal-finder setupto review settings - Network issues: Ensure internet connection is working
Solutions:
# Check permissions on config directory
ls -la ~/.config/ # or equivalent on Windows
# Run setup again with verbose output
tbr-deal-finder setup
# Verify config file exists and is readable
# Config location varies by OS - check documentation# Update certificates
pip install --upgrade certifi
# Use trusted hosts if behind firewall
pip install --trusted-host pypi.org --trusted-host pypi.python.org tbr-deal-finder- Network: Check internet connection speed
- Location: Use locale closest to your region
- Frequency: Don't run too frequently (max once per hour)
- Virtual Environment: Use isolated environments
- Python Version: Ensure using supported Python 3.13+
- System Resources: Close other applications if needed
# Use different config files for different reading lists
tbr-deal-finder --config-file ~/work-books.config setup
tbr-deal-finder --config-file ~/personal-books.config setup# Use with grep for filtering
tbr-deal-finder active-deals | grep -i "audible"
# Count number of deals
tbr-deal-finder latest-deals | wc -l
# Extract just book titles
tbr-deal-finder active-deals | grep -E "^[A-Za-z]" | head -10# Install development version from GitHub
pip install git+https://github.com/WillNye/tbr-deal-finder.git
# Install specific version
pip install tbr-deal-finder==0.2.1
# Install pre-release versions
pip install --pre tbr-deal-finder- Keep Updated: Remove purchased books regularly
- Multiple Sources: Combine StoryGraph, Goodreads, Hardcover, and custom lists
- Series Tracking: Include upcoming books in series you follow
- Realistic Prices: Set maximum prices you'll actually pay
- Sweet Spot Discounts: Usually 20-30% minimum works well
- Multiple Retailers: Enable all retailers you use
- Daily Cron Jobs: Automatic morning deal checks
- Email Integration: Get deals delivered to inbox
- Log Files: Keep history of deals for analysis
- Lightweight: Minimal system resources
- Automation: Easy to script and automate
- Integration: Works with other command-line tools
- Flexible: Customize behavior with scripts
- Fast: Quick execution for regular checks
- Python Developers: Natural fit for existing workflow
- Power Users: Those comfortable with command line
- Automation Enthusiasts: Want scripted deal checking
- Server Deployments: Running on headless systems
Ready to start finding book deals from the command line? Install with pip and begin saving! 📚⌨️