ITIS
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:
European frog:
→ Animalia
→ Bilateria
→ Deuterostomia
→ Chordata
→ Vertebrata
→ Gnathostomata
→ Tetrapoda
→ Amphibia
→ Anura
→ Ranidae
→ Rana
→ 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.
vernaculars
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:
50|bacteria|English|N|2015-03-02|159942
14092|mushrooms|English|N|2004-01-28|11529
14092|pore fungi|English|N|2004-01-28|11534
14092|rusts|English|N|2004-01-28|11539
183798|Domestic Cat|English|N|2007-08-15|111781
You can read the file dropcreateloaditis.sql
to see what the other columns mean.
longnames
The file longnames
contains only two fields, the TSN and the complete "scientific" name of the item. For example:
50|Bacteria
14092|Basidiomycotina
183798|Felis catus
hierarchy
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 (-
). E.g.,
50|50|0|0|14789
555705-936287-623881|623881|936287|2|415
202423-914154-914156-158852-331030-914179-914181-179913-179916-179925-180539-552304-180580-552363-180586-183798|183798|180586|15|0
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
The 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:
51|50|2015-03-02
14092|623881|2004-01-28
552455|180586|2007-08-15
Example script
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
wget https://www.itis.gov/downloads/itisMySQLTables.tar.gz
tar -axvf itisMySQLTables.tar.gz
cd itisMySQL*/
② 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 human
./lookup.py domestic cat
./lookup.py love-lies-bleeding
④ Sample output
human:
→ Animalia
→ Bilateria
→ Deuterostomia
→ Chordata
→ Vertebrata
→ Gnathostomata
→ Tetrapoda
→ Mammalia
→ Theria
→ Eutheria
→ Primates
→ Haplorrhini
→ Simiiformes
→ Hominoidea
→ Hominidae
→ Homininae
→ Homo
→ Homo sapiens