UnicodeEncodeError: 'gbk' codec can't encode character '\u274c' in position 58: illegal multibyte

转载前请注明博主的链接地址:Blessy_Zhu https://blog.csdn.net/weixin_42555080

UnicodeEncodeError: ‘gbk’ codec can’t encode character ‘\u274c’ in position 58: illegal multibyte sequence
当遇到如下图所示问题时,
 


在这里插入图片描述

原因在于:

  • Python 3里面字符串的默认编码是Unicode:这样,从网页中爬取的内容,如:data = BeautifulSoup(comment,'lxml').get_text()在代码里面是存在字符串变量里。
  • 但是,Windows下面新建的文本文件默认的编码是gbk(Windows简体中文版的系统默认编码就是gbk)
  • 这样一来,当把从网页上读取的内容写到文本文件里面去的时候,意味着把一个unicode的字符序列写入到一个编码是gbk的文件,就会出错了。

解决方法就是让一方进行编码同步,可以使是在打开一个文件的时候,指定文件的编码,让它以指定的编码打开,如下图所示:
 


UnicodeEncodeError: 'gbk' codec can't encode character '\u274c' in position 58: illegal multibyte_第1张图片
这样问题就解决了。

你可能感兴趣的:(Python基础)