gpt4 book ai didi

google-app-engine - 尝试将 Utf-8 数据存储在数据存储中,获取 UnicodeEncodeError

转载 作者:太空宇宙 更新时间:2023-11-03 15:32:40 24 4
gpt4 key购买 nike

尝试将 utf-8 存储到数据存储区并出现错误:

Traceback (most recent call last):  File "/sinfo/google_appengine/google/appengine/ext/webapp/__init__.py", line 511, in __call__    handler.get(*groups)  File "/sinfo/siteinfo/siteinfo.py", line 1911, in get    seoEntity.put()  File "/sinfo/google_appengine/google/appengine/ext/db/__init__.py", line 833, in put    return datastore.Put(self._entity, rpc=rpc)  File "/sinfo/google_appengine/google/appengine/api/datastore.py", line 275, in Put    req.entity_list().extend([e._ToPb() for e in entities])  File "/sinfo/google_appengine/google/appengine/api/datastore.py", line 680, in _ToPb    properties = datastore_types.ToPropertyPb(name, values)  File "/sinfo/google_appengine/google/appengine/api/datastore_types.py", line 1499, in ToPropertyPb    pbvalue = pack_prop(name, v, pb.mutable_value())  File "/sinfo/google_appengine/google/appengine/api/datastore_types.py", line 1322, in PackString    pbvalue.set_stringvalue(unicode(value).encode('utf-8'))UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1: ordinal not in range(128)

我该如何解决这个问题?数据已经是 utf-8 编码的,当我将它输入数据存储时它使用 ascii 编解码器并失败?

最佳答案

我在我的项目中使用以下助手

def force_utf8(string):
if type(string) == str:
return string
return string.encode('utf-8')

在传递给 GAE 之前使用它来转义所有 unicode 数据。您还可以找到有用的以下代码段:

def force_unicode(string):
if type(string) == unicode:
return string
return string.decode('utf-8')

关于google-app-engine - 尝试将 Utf-8 数据存储在数据存储中,获取 UnicodeEncodeError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3094391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com