>백엔드 개발 >파이썬 튜토리얼 >웹 페이지 인코딩을 결정하는 Python 방법

웹 페이지 인코딩을 결정하는 Python 방법

高洛峰
高洛峰원래의
2017-02-25 13:35:131337검색

웹 개발을 하다 보면 웹페이지 크롤링과 분석을 자주 접하는데, 다양한 언어로 이 기능을 완성할 수 있습니다. 저는 Python을 사용하여 이를 구현하는 것을 좋아합니다. 왜냐하면 Python은 웹 크롤링을 쉽게 구현할 수 있는 많은 성숙한 모듈을 제공하기 때문입니다.

그러나 크롤링 과정에서 인코딩 문제가 발생합니다. 오늘은 웹 페이지의 인코딩을 결정하는 방법을 살펴보겠습니다.
웹 페이지의 많은 인코딩 형식 인터넷은 일반적으로 GBK, GB2312, UTF-8 등이 다릅니다.
웹페이지의 데이터를 얻은 후 먼저 웹페이지의 인코딩을 판단해야 하며, 그런 다음 캡처된 콘텐츠의 인코딩을 왜곡된 코드 문제를 피하기 위해 처리할 수 있는 인코딩으로 균일하게 변환할 수 있습니다.

다음은 웹페이지 인코딩을 판단하는 두 가지 방법을 소개합니다.

요약: 두 번째 방법은 웹페이지 인코딩을 분석할 때 매우 정확합니다. 컨텐츠를 분석하는 Python 모듈은 정확하지만 메타 헤더 정보를 분석하는 방법은 덜 정확합니다.

방법 1: urllib 모듈의 getparam 메소드 사용

import urllib
#autor:pythontab.com
fopen1 = urllib.urlopen('http://www.baidu.com').info()
print fopen1.getparam('charset')# baidu

방법 2: chardet 모듈 사용 

#如果你的python没有安装chardet模块,你需要首先安装一下chardet判断编码的模块哦 
#author:pythontab.com
import chardet 
import urllib
#先获取网页内容
data1 = urllib.urlopen('http://www.baidu.com').read()
#用chardet进行内容分析
chardit1 = chardet.detect(data1)
 
print chardit1['encoding'] # baidu

위 내용은 이 글의 전체 내용입니다. 모든 분들의 학습에 도움이 되기를 바랍니다.

파이썬의 웹 페이지 인코딩 판단 방법과 관련된 더 많은 글은 PHP 중국어 홈페이지를 주목해주세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.