I tried itunes genius but for each track it says it can't do it. Ideally I need something that will scan my entire library and give me albums, songs and artist I might like
Use an scrobbler like Last.fm. It will detect the songs you listen to using the ID3 tags embedded in the files and will suggest new music based on what you have been listening to.
Last.fm was a huge thing before the age of Spotify and many hardcore music fans still use it to keep track of what they listen to. Spotify has built-in support for Last.fm but almost every other source (YouTube, Bandcamp, SoundCloud, you name it) can be scrobbled using the official client or some sort of plugin. As it is almost source agnostic, it can act as a central repository for all the music you consume.