python处理抓取中文编码和判断编码

来源(PythonTab:Python中文开发者社区门户)

From: http://www.pythontab.com/html/2014/pythonjichu_0227/706.html

python处理抓取中文编码和判断编码

2014-02-27 09:55:02 来源:

在开发自用爬虫过程中,有的网页是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')

Link: http://www.asm32.net/article_details.aspx?id=6240


浏览次数 0 发布时间 2014/3/6 10:27:10 从属分类 Python 【评论】【 】【打印】【关闭
 
| www.asm32.net | 2006版 | 资料中心 | linux | asm/asm32 | C/C++ | VC++ | java | Python | 书签 | ASP.Net书签 | 京ICP备09029108号-1