How do you compare two databases in pandas?

I have two similar databases in pandas that I want to compare. They're similar to:

data = {'book_name': book_names, 'authors': authors, 'prices':prices}
df = pd.DataFrame(data)
data2 = {'book_name': book_names, 'authors': authors, 'prices': prices,
    'description': descriptions}
df2 = pd.DataFrame(data2)

I want to compare the prices of the books BUT my issue is that both data frames contain a lot of different books and only some similar books - so whats the quickest way to find similar books in both dataframes and compare their prices. I wanted to try python dictionaires but the data set i have is so large it would take forever. Is there any more convenient method?