UnicodeEncodeError / python3

时间:2017-04-17 14:11:13

标签: python django encoding utf-8 ascii

无法解决编码的典型问题。通过邮件接收Cyrrlic文本并引发错误

'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)

文本键本身有一个外观,它必须是俄语的西里尔文:u' \ u043f \ u0440 \ u043e'

之后错误尝试了这种方式和其他一些:

  key = key.decode('ascii').encode('utf8')

或:

key = key.decode('ascii')

Localy它可以工作,只在生产中引发错误。生产中的Python系统编码是utf8

编辑:为了清理事情。表单处理函数出现错误(同样,工作localy,不在生产中)

def search(request):
     if request.method == 'POST':
        key = request.POST.get("key")
        if key is not None:
        ..

因此从输入表单中收到了str,并且此时首先出现错误,所以我认为必须对其进行解码,但它没有帮助。

更多追溯:

UnicodeEncodeError at /search/

' ASCII'编解码器不能对位置0-2中的字符进行编码:序数不在范围内(128)

0 个答案:

没有答案