解决字符串转换问题:UnicodeEncodeError: 'gbk' codec

发布时间:2017-07-17 编辑:汤利军 阅读:

今天用BeautifulSoup 获取网页内容时遇到一个问题(如下图所示):

解决字符串转换问题:UnicodeEncodeError: 'gbk' codec can't encode character '\xa0' in position 5: illegal multibyte sequence

错误让人很困惑、第一次遇到这个问题、然后网上搜索了一番:
  
推荐阅读:http://blog.csdn.net/xiaoyi_zhang/article/details/51675099
  
产生这个错误的原因:unicode中的‘\xa0’字符在转换成gbk编码时会出现问题,gbk无法转换'\xa0'字符;  PS:print()函数在win系统下有限制、不能打印所有的Unicode 字符
  
解决办法有两种(亲测有效):
  
一、转换前将’xa0‘替换成空格
  
replace(u'\xa0', u' ')
  
二、改变python 的默认编码
  
sys.stdout = io.TextIOWrapper(sys.stdout.buffer,encoding='gb18030')

关注我

图文推荐

云标签

友链交换