python编码问题

把写程序过程遇到的编码相关的问题记录下,暂时还不知道本质原因,仅为记录

import chardet
print chardet.detect(str)    #可以显示str的实际编码
或者
from bs4 import Beautifulsoup
print Beautifulsoup(str).original_encoding    #显示str的实际编码
  1. 问题:网页中charset='utf8',但是decode('utf-8')时出错

    解决:decode('utf-8', 'ignore')

  2. 问题:网页中charset=gbk”或“charset=2312”,但是decode('gbk')或decode('gb2312')时出错

    解决:decode('gb18030')

  3. 问题:print str显示正常,但是print Beautifulsoup(str)乱码

    解决:soup=Beautifulsoup(str, from_encoding('utf8'))

你可能感兴趣的:(python编码问题)