解决‘gbk‘codec can‘t encode character ‘U0001f914‘ in position 3661: illegal multibyte sequence问题

Posted 行码棋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决‘gbk‘codec can‘t encode character ‘U0001f914‘ in position 3661: illegal multibyte sequence问题相关的知识,希望对你有一定的参考价值。

问题

在我准备写程序想要获取 QQ群所有的群成员的信息列表(成员群名称可能有特殊字符) 时,我要把信息存进一个文件里面,写入文件的时候,出现了这个错误

出错代码:

网上查找相关的东西,知道应该是编码方式出了问题,就是这个编码用gbk编码无法将其编制,因为gbk里面找不到相关的编码

解决方法

1.替换(这一种我没有用,没试过,感觉并没有解决根本问题)

f.write(data.replace(u'\\U0001f914', u''))

将其替换为空
2.直接改变编码方式(我用的这种)
Windows写入文件时,打开文件默认使用gbk编码,上述出现的问题是不能用gbk编码,我们从打开文件就让它以utf-8形式打开就行了

with open("info",'w',encoding='utf-8') as f:
     f.write(str(data))

往期优质文章推荐

领取大量学习资源

以上是关于解决‘gbk‘codec can‘t encode character ‘U0001f914‘ in position 3661: illegal multibyte sequence问题的主要内容,如果未能解决你的问题,请参考以下文章

python写入文件中遇到 UnicodeEncodeError: ‘gbk’ codec can’t encode character 错误的解决办法

[python]UnicodeEncodeError: 'gbk' codec can't encode character 解决方法

pythonPython3中出现'gbk' codec can't encode characte的成功解决方法?

python编码问题——解决python3 UnicodeEncodeError: 'gbk' codec can't encode character 'xXX&#(

解决“UnicodeEncodeError: 'gbk' codec can't encode character u'xa9' in position 24

UnicodeEncodeError: ‘gbk‘ codec can‘t encode character 的解决方法