Skip to content

Automatically scrobbles tracks from Spotify playlists to Last.fm accounts while randomly loving/unloving tracks to simulate organic listening behavior.

License

Notifications You must be signed in to change notification settings

devddine/auto-scrobbler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Auto Scrobbler
Auto Scrobbler

A powerful automatic music scrobbler built with Python, powered by Spotify and Last.fm.

GitHub Issues GitHub Pull Requests Discord GitHub contributors GitHub Sponsors

Key FeaturesHow To UseCreditsSupportContributingLicense

Auto Scrobbler Demo

🌟 Key Features

  • Automatic Scrobbling
    • Continuously scrobbles tracks from Spotify playlists to Last.fm
    • Intelligent track selection and timing
  • Smart Love/Unlove
    • Automatically loves or unloves tracks based on intelligent algorithms
  • Error Recovery
    • Robust error handling and automatic recovery
    • Detailed logging for troubleshooting
  • Keep-Alive System
    • Built-in web server ensures continuous operation
    • Automatic restart on crashes
  • Configuration Management
    • Environment-based configuration
    • Secure credential handling
  • Cross platform
    • Windows, macOS and Linux ready

🚀 How To Use

To clone and run this application, you'll need Git, Python 3.8+, and Poetry installed on your computer. From your command line:

# Clone this repository
$ git clone https://github.com/yourusername/auto-scrobbler

# Go into the repository
$ cd auto-scrobbler

# Install dependencies using Poetry
$ poetry install

# Copy the environment template and fill in your credentials
$ cp .env_template .env

# Update the playlist IDs in `main.py` with your desired Spotify playlists

# Run the app
$ poetry run python main.py

Note Make sure to set up your .env file with proper credentials before running the application.

📜 Logging

Logs are stored in logs/auto_scrobble.log. The log level can be configured in the .env file.

🕛 Error Handling

The application includes robust error handling:

  • Automatic retry mechanism for failed scrobbles
  • One-hour wait period after consecutive failures
  • Detailed error logging

⚡ You may also like...

  • NeuralRoulette-AI - An advanced machine learning system for predicting roulette outcomes.

🙏 Credits

This software uses the following open source packages:

  • Spotipy - Lightweight Python library for the Spotify Web API
  • PyLast - Python interface to Last.fm
  • Flask - Lightweight WSGI web application framework
  • Python-Dotenv - Environment variables management

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

🤍 Support

If you like this project and think it has helped in any way, consider buying me a coffee!

Buy Me A Coffee

📝 License

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


Built with ❤️ by devddine

About

Automatically scrobbles tracks from Spotify playlists to Last.fm accounts while randomly loving/unloving tracks to simulate organic listening behavior.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Languages