I wanted music videos for the artists in my library without doing it all by hand, so I built a desktop app for it. I put it together with a lot of help from Claude (the AI). It's not a polished product, but it works for me and I thought others might find it useful.
It starts by reading your database for Lidarr, Kodi, Plex, Jellyfin or Emby to get a list of your artists and MusicBrainz IDs. Then it searches IMVDb, Wikipedia and YouTube for their videos and combines everything into one list. Missing years, albums and genres get filled in from your library and MusicBrainz. The list won't be perfect, so you can edit it yourself: rename a title, change a link, or exclude a song or a duplicate.
It downloads the videos with yt-dlp and puts them in the right folders for your media server, with NFO files, tags and artwork. Anything without an album or year is skipped. If you add the album or year yourself, it won't be skipped. After that you can go through the Review tab, play what you got, and replace or delete the ones that are wrong. You can also have it write a short description for each video. Once you've done every step by hand, Auto Run can keep going on a PC that's always on and fetch new videos by itself. By default it works overnight, but you can set the hours to all day.
The first tab is a Setup page that checks what you need and installs the Python packages for you. You need Python 3.10 or newer, ffmpeg, a free fanart.tv API key and your email for MusicBrainz. mpv is optional, for the player. You can import your settings from a previous version.
One thing to know: YouTube will block you if you download hundreds of videos without being signed in, so you'll want a cookies.txt from a spare Google account (not your main one). The README explains how. When a block starts the app stops, and Auto Run waits a few hours and carries on.
I've only tested it on Linux, but it should work on Windows too. I really dont know what needs to done on windows to make it work yet. It may just work idk.
Just to be clear i made this script with Claude AI with not mush knowledge of python. It works for me when i direct it to the lidarr database.
https://drive.google.com/file/d/1OBq64CKtVwbb46OAQu-kkZDy6ADaJqQe/view?usp=sharing
EDIT: Just updated the link to a newer version, will put this on github at some point. really it just up for testing. so still a few changes and possible bugs that may need fixing in future.
2nd EDIT: Last update on reddit for the file. I will move this over to github within the next week. Added BgUtils POT Provider helper script. it will start a docker or podman container. Info on the setup page.
3rd and final EDIT: i am in the process making this into a docker container with a web ui. so something similar to lidarr but for music videos. so that mean the desktop gui will go.