I'm the author of the Python package WordHoard.  This package can be used to find semantic relationships between words including a word's antonyms, synonyms, hypernyms, hyponyms and homophones.
from wordhoard import Synonyms
word1 = 'motorcar'
word2 = 'automobile'
synonym_list = Synonyms(word1).find_synonyms()
find_word = [word for word in synonym_list if word == word2]
if find_word is not None:
    print(f'{word2} is a synonym of {word1}')
    # print output
    automobile is a synonym of motorcar.
else:
    print(f'{word2} is not a synonym of {word1}')
I have found wordnet to be very limited.  For instance these are the synonyms for motorcar from wordnet:
['auto', 'automobile', 'car', 'machine']
WordHoard is designed to query other sources.  For example the query below returns 152 synonyms for the word motorcar.
from wordhoard import Synonyms
synonym_list = Synonyms('motorcar').find_synonyms()
print(len(synonym_list))
152
If you decided to use WordHoard please let me know how it works for your use case.