Heim  >  Artikel  >  Backend-Entwicklung  >  Python übernimmt das Crawlen der chinesischen Kodierung und die Beurteilung der Kodierung

Python übernimmt das Crawlen der chinesischen Kodierung und die Beurteilung der Kodierung

高洛峰
高洛峰Original
2016-10-19 11:45:201232Durchsuche

Bei der Entwicklung meines eigenen Crawlers sind einige Webseiten utf-8, einige gb2312 und einige sind gbk. Wenn sie nicht verarbeitet werden, werden die gesammelten Daten verstümmelt. Die Lösung besteht darin, den HTML-Code zu vereinheitlichen utf-8-Kodierung.

Version 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')


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn