ascii-cp1251-latin1, ты именно в таком порядке хочешь пробовать? Если latin1 сначала, то UnicodeDecode не будет? И зачем ascii?
native_str от типа unicode можно не делать
вот ещё может на что-нибудь натолкнёт https://github.com/hhru/frontik/blob/master/frontik/util.py#L59