When I tried to insert right double quotes (”) using python MySQLdb it produces UnicodeEncodeError: 'latin-1' codec can't encode character u'\u201d' in position 0: ordinal not in range(256). python MySQLdb uses latin-1 codec by default and from the index.xml file in the /usr/share/mysql/charsets/, it is described as cp1252 West European. Hence I think that latin1 will cover cp1252 characters also. But latin1 won't cover cp1252 characters, If they does I will not get the Error.
The right double quotes are lies in cp1252 charset but not in ISO 8859-1( or latin1) charset. 
There is no cp1252.xml file in /usr/share/mysql/charsets/. Why python MySQLdb is missing cp1252 charset?
Or whether the latin1 is same as cp1252 as they described in index.xml.
You really need cp1252, not utf-8?
I strongly recommend using utf-8.
What you need is:

Pass charset="utf8mb4" option to MySQLdb.connect().
Configure database to use utf-8.

You can create database with utf-8 by CREATE DATABASE <your db name> DEFAULT CHARACTER SET utf8mb4.
If you already have database, you can change default character set by ALTER DATABASE <your db name> CHARACTER SET utf8mb4.  But you need to change all character set for existing tables in the database too.
How to insert cp1252 characters using MySQLdb?