Python 2.x will be a pain for that. Python 3.x has more stable uni code workings.
That page had replies up to an hour after you posted to ask about it.
Do Not use str() on a uni code variable. The str function is for ASCII strings. The encode and decode functions that belong to your unit variables are what you need. There are 'ignore' and 'replace' options for... I believe it was the encode function.
This is being sent from my phone which is a real pain. I hope you get the point though.