본문 바로가기
Coding/Python

소켓 통신할때 Response 못받아오는 문제

by Hide­ 2016. 1. 8.
반응형

최근 소켓으로 통신할때 Response를 파싱하는 작업을 진행하다가

제대로 받아오지 못하고 깨진 문자열을 반환하는 문제점을 발견했다. 

해결법은 간단하다. 받아온 값을 decompress 해주면 해결되더라.

(Request 보낼 때 Accept-Encoding 헤더를 지우면 되는경우도 있음)


import gzip

import StringIO


body = decompress할 값

decompress = StringIO.StringIO(body)

gzipper = gzip.GzipFile(fileobj=decompress)

temp = gzipper.read()

print temp


추가로 웹 크롤링 등의 작업을 할 때 gzip 등으로 compress 시켜주면 보다 빠른 속도로 진행이 가능하다고 한다.

(서버에서 해당 인코딩을 지원할 때)

'Coding > Python' 카테고리의 다른 글

BeautifulSoup 웹파싱  (0) 2016.01.29
Pytesser OCR  (0) 2016.01.27
Selenium 경로설정  (0) 2016.01.08
DB Parser  (0) 2015.12.25
정렬 알고리즘  (0) 2015.03.09