Importing tags from an online source

I have purchased dozens of MP3 albums from Amazon and Google Play over a long time, but in some of them I notice that the tags are badly misspelt or just plain mangled in terms of ASCII characters in one way or another, or for many other reasons are just plain incorrect.

Up to now I've been taking the MP3s with the offending tags, making copies of them, correcting the tags and then storing them elsewhere to be "patched" over the original files as and when I need to restore the MP3 files for any reason.

But I'm wondering if there's a simpler way to replace the tags for a particular album from an online source like freedb or whatever.

The problem is, I have modified the original folders and files so that such a tool may not work, so is there a way around that?

The usual folder/file pattern for MP3 albums is:

[artist][album][disc no] [track no] [title].mp3

But I use:

AM (category) (sort code) [album]\AM (category) (sort code) [disc no] [track no].mp3

Category is basically Classical, Commercial, Games, Film & TV and so on, and Sort Code is just a three-letter code by which to sort the albums the way I want, usually an artist name.

The folder structure does not matter as you have to select the files of an album manually (which is easier if you have them in a separate folder for each album).
The source script usually needs the album name to look for information, sometimes it is quite nice to know the artist as well as e.g. the "Greatest Hits" albums may occur numerous times.
Yet, using web sources (or other) does not always save you from spelling mistakes.

Each album is in its own folder, yes.

So how do I use these scripts?

Load the files you want to have tagged by a web source.
Select all files of an album.
Use the function Web-Sources>
to access for information.
If there are more than one album that fits the search string, select the correct one.
In the following dialogue arrange, if necessary, the files in the correct order.
Click OK to apply the tagging.

See this forum in Web Sources for more scripts to access other sources if you are not satisfied with the data.