python处理惩罚抓取中文编码和判定编码
在开拓自用爬虫进程中,有的网页是utf-8,有的是gb2312,有的是gbk,假如不加处理惩罚,收罗到的都是乱码,办理的要领是将html处理惩罚成统一的utf-8编码
版本python2.7
#coding:utf-8 import chardet #抓取网页html line = "http://www.pythontab.com" html_1 = urllib2.urlopen(line,timeout=120).read() encoding_dict = chardet.detect(html_1) print encoding web_encoding = encoding_dict['encoding'] #处理惩罚,整个html就不会是乱码。 if web_encoding == 'utf-8' or web_encoding == 'UTF-8': html = html_1 else : html = html_1.decode('gbk','ignore').encode('utf-8')