diff --git a/CHANGES.rst b/CHANGES.rst
index e371e085d9..4ad54e2e72 100644
--- a/CHANGES.rst
+++ b/CHANGES.rst
@@ -216,6 +216,12 @@ jplsbdb
 - Fix a bug for jplsdbd query when the returned physical quantity contains
   a unit with exponential. [#2377]
 
+jplspec
+^^^^^^^
+
+- Fix a bug in lookup-table generation when using ``parse_name_locally``
+  option. [#2945]
+
 linelists.cdms
 ^^^^^^^^^^^^^^
 
diff --git a/astroquery/jplspec/core.py b/astroquery/jplspec/core.py
index 114cf275d9..584c2e8563 100644
--- a/astroquery/jplspec/core.py
+++ b/astroquery/jplspec/core.py
@@ -238,9 +238,9 @@ def get_species_table(self, *, catfile='catdir.cat'):
 def build_lookup():
 
     result = JPLSpec.get_species_table()
-    keys = list(result[1][:])  # convert NAME column to list
-    values = list(result[0][:])  # convert TAG column to list
-    dictionary = dict(zip(keys, values))  # make k,v dictionary
+    keys = list(result['NAME'])
+    values = list(result['TAG'])
+    dictionary = dict(zip(keys, values))
     lookuptable = lookup_table.Lookuptable(dictionary)  # apply the class above
 
     return lookuptable