ast.literal_eval
должен безопасно использовать трюк .
EG
>>> ast.literal_eval("((1, u'Central Plant 1', u'http://egauge.com/'),
... (2, u'Central Plant 2', u'http://egauge2.com/'))")
((1, u'Central Plant 1', u'http://egauge.com/'), (2, u'Central Plant 2', u'http://egauge2.com/'))
См. this answer для получения дополнительной информации о том, почему не использовать eval
.