Python UTF-32。您必须修复JSON的供应商(使其使用\\u00f6而不是\xf6),或者在将其解析为JSON.oops之前,找出这是什么编码并重新编码为UTF-8,所以我注意到了“s”。但是谢谢你,我会放弃的)∶好的,我在我的帖子中添加了导致问题的字符串。N

Python UTF-32。您必须修复JSON的供应商(使其使用\\u00f6而不是\xf6),或者在将其解析为JSON.oops之前,找出这是什么编码并重新编码为UTF-8,所以我注意到了“s”。但是谢谢你,我会放弃的)∶好的,我在我的帖子中添加了导致问题的字符串。N,python,unicode,python-2.x,Python,Unicode,Python 2.x,UTF-32。您必须修复JSON的供应商(使其使用\\u00f6而不是\xf6),或者在将其解析为JSON.oops之前,找出这是什么编码并重新编码为UTF-8,所以我注意到了“s”。但是谢谢你,我会放弃的)∶好的,我在我的帖子中添加了导致问题的字符串。NameError:全局名称“opener”没有定义?@GopakumarNG:查看urllib库以了解normal的示例stacktrace。@TadeuszA.Kadłubowski感谢“ISO-8859-1”。我不知道这种编码,它随机为我修


UTF-32。您必须修复JSON的供应商(使其使用
\\u00f6
而不是
\xf6
),或者在将其解析为JSON.oops之前,找出这是什么编码并重新编码为UTF-8,所以我注意到了“s”。但是谢谢你,我会放弃的)∶好的,我在我的帖子中添加了导致问题的字符串。NameError:全局名称“opener”没有定义?@GopakumarNG:查看urllib库以了解normal的示例stacktrace。@TadeuszA.Kadłubowski感谢“ISO-8859-1”。我不知道这种编码,它随机为我修补了它。@GopakumarNG:json.load(open(fname,'r'),encoding='ISO-8859-1')@samboosalis-nltk-bug-link-brokenI我希望我能投你10票。这就是我奋斗了两天的问题!在我的例子中,我选择了“UTF8编码”,它仍然有效,但暴露了我替换的奇数字符。每个使用记事本++或其他编辑器的人都应该注意。
Traceback (most recent call last):
  File "/usr/local/lib/python2.6/dist-packages/eventlet-0.9.12-py2.6.egg/eventlet/hubs/poll.py", line 92, in wait
    readers.get(fileno, noop).cb(fileno)
  File "/usr/local/lib/python2.6/dist-packages/eventlet-0.9.12-py2.6.egg/eventlet/greenthread.py", line 202, in main
    result = function(*args, **kwargs)
  File "android_suggest.py", line 60, in fetch
    suggestions = suggest(chars)
  File "android_suggest.py", line 28, in suggest
    return [i['s'] for i in json.loads(opener.open('https://market.android.com/suggest/SuggRequest?json=1&query='+s+'&hl=de&gl=DE').read())]
  File "/usr/lib/python2.6/json/__init__.py", line 307, in loads
    return _default_decoder.decode(s)
  File "/usr/lib/python2.6/json/decoder.py", line 319, in decode
    obj, end = self.raw_decode(s, idx=_w(s, 0).end())
  File "/usr/lib/python2.6/json/decoder.py", line 336, in raw_decode
    obj, end = self._scanner.iterscan(s, **kw).next()
  File "/usr/lib/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib/python2.6/json/decoder.py", line 217, in JSONArray
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib/python2.6/json/decoder.py", line 183, in JSONObject
    value, end = iterscan(s, idx=end, context=context).next()
  File "/usr/lib/python2.6/json/scanner.py", line 55, in iterscan
    rval, next_pos = action(m, context)
  File "/usr/lib/python2.6/json/decoder.py", line 155, in JSONString
    return scanstring(match.string, match.end(), encoding, strict)
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 3-6: invalid data
json.loads(unicode(opener.open(...), "ISO-8859-1"))
export LC_CTYPE="en_US.UTF-8"