我想发送一个POST请求到一个web应用程序。我正在使用机械化模块(本身是urllib2的包装)。无论如何,当我尝试发送POST请求时,我得到了UnicodeDecodeError: 'ascii' codec can't decode byte 0xc5 in position 0: ordinal not in range(128)
。我试图把unicode(string)
的unicode(string, encoding="utf-8")
,unicode(string).encode()
等,没有什么工作 - 无论是返回的错误之上,或TypeError: decoding Unicode is not supported
在Python中发送非ASCII POST请求?
我看了看其他的SO回答类似的问题,但没有帮助。
在此先感谢!
编辑:其所产生的错误:
prda = "šđćč" #valid UTF-8 characters
prda # typing in python shell
'\xc5\xa1\xc4\x91\xc4\x87\xc4\x8d'
print prda # in shell
šđćč
prda.encode("utf-8") #in shell
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc5 in position 0: ordinal not in range(128)
unicode(prda)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc5 in position 0: ordinal not in range(128)
如果您展示了一个产生错误的小型自包含示例,我会提供帮助。 – ekhumoro 2012-01-07 23:46:01
@ekhumoro补充的例子,希望它清除它 – 2012-01-08 00:37:42