stackoverflow 上有一些线程,但我找不到整个问题的有效解决方案。
我从 urllib 读取函数收集了大量文本数据并将其存储在 pickle 文件中。
现在我想将这些数据写入文件。
写作时我遇到类似的错误 -
'ascii' codec can't encode character u'\u2019' in position 16: ordinal not in range(128)
并且大量数据正在丢失。
我想 urllib 读取的数据是字节数据
我试过了
1. text=text.decode('ascii','ignore')
2. s=filter(lambda x: x in string.printable, s)
3. text=u''+text
text=text.decode().encode('utf-8')
但我仍然遇到类似的错误。
有人可以指出一个正确的解决方案吗?
并且编解码器也会剥离工作。
如果冲突字节没有作为字符串写入文件,因此损失被接受,我没有问题。
你可以通过smart_str
of Django
模块。试试这个:
from django.utils.encoding import smart_str, smart_unicode
text = u'\u2019'
print smart_str(text)
您可以通过使用管理员权限启动命令 shell 并运行以下命令来安装 Django:
pip install Django
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)