To expand on the answer from @Rodrigo, the Integrated Taxonomic Information System seems to be a reasonable answer. It gives you a database of every taxonomic node in the Tree of Life™ and each node has a Taxonomic Serial Number (TSN). You can download the data as a database or even just use the tables as pipe-delimited text files.
For example the file
vernaculars tells us that the TSN for European frog is 173444. By looking in the file
longnames, we can see that the complete name for 173444 is Rana temporaria. Finally, the file
hierarchy, tells us that the complete hierarchy for 173444 is:
→ Rana temporaria
You may download the ITIS data in several different formats from https://www.itis.gov/downloads.
Example data from some of the files.
If you downloaded the MySQL Tables data from https://www.itis.gov/downloads/itisMySQLTables.tar.gz, here are some of the useful files you'll find.
The first two fields of
vernaculars contain the TSN (Taxonomic Serial Number) and the common name for a node. Some common names map to a single TSN and not all TSNs have common names. Some examples:
You can read the file
dropcreateloaditis.sql to see what the other columns mean.
longnames contains only two fields, the TSN and the complete "scientific" name of the item. For example:
The first field of the file
hierarchy is the entire hierarchy, from tip to tail, for the TSN in the second field represented as a sequence of TSNs separated by a hyphen (
Of course, those TSNs can be looked up in the
longnames table to convert to something human readable. Using that, here is what the first field of the last line above actually says,
Animalia → Bilateria → Deuterostomia → Chordata → Vertebrata → Gnathostomata → Tetrapoda → Mammalia → Theria → Eutheria → Carnivora → Feliformia → Felidae → Felinae → Felis → Felis catus
synonym_links file contains a list of obsolete TSNs and the current TSN which should replace them. For example, the TSN for the vernacular mushrooms is given as 14092 (Basidiomycotina). However, that TSN is not in the
hierarchy file. Instead, synonym_links points us to use 623881 (Basidiomycota), which works. Here are some synonym entries:
If you have access to a UNIX machine (MacOS may work), you can look up any common name by using a simple script I wrote. It will print a taxonomy, just like for European frog above. You can cut and paste the following commands into your terminal to try it out.
① Download the data
tar -axvf itisMySQLTables.tar.gz
② Download my lookup.py script
wget https://tinyurl.com/yyld2mm4 -O lookup.py
chmod +x lookup.py
③ Run the script giving it a common name
./lookup.py domestic cat
④ Sample output
→ Homo sapiens