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')
但我仍然会遇到类似的错误。有人可以指出一个适当的解决方案。并且编解码器也会剥离工作。如果冲突字节没有作为字符串写入文件,我没有问题,因此接受丢失。